Skip to content
This repository was archived by the owner on Feb 5, 2020. It is now read-only.

Project: Elixir

bryanhuntesl edited this page Feb 5, 2019 · 64 revisions
  • Website: http://elixir-lang.org/
  • Responsible: José Valim, Eric Meadows-Jönsson
  • If you have any questions, send an e-mail to beam-community AT googlegroups DOT com

Ideas are listed in no particular order. Students providing their own ideas are also welcome!

Idea #1: Two-Factor Authentication for Hex

Implement Two-Factor Authentication for package publishing.

Expected results: 2FA implementation for Hex.pm (server), Hex (client), possibly rebar3 (via hex_core)

Knowledge prerequisites: Elixir, Erlang (hex_core)

Possible Mentors: Eric Meadows-Jönsson, Wojtek Mach

Idea #2: Package vulnerability disclosure for Hex

Add the ability to report vulnerabilities in Hex packages via a form on the https://hex.pm/ website. A group of trusted moderators will be notified that will either accept or reject the report, if accepted the package owners will be notified. After the fix is released, or after a deadline passes, a security advisory will be posted for the package. A good proposal would describe what other features could be part of the project.

Expected results: A website form to report vulnerabilities and an interface for the moderators to triage reports and post security advisories.

Knowledge prerequisites: Elixir

Possible Mentors: Eric Meadows-Jönsson

Idea #3: Make BEAM debugger work for Elixir

This Erlang debugger bug has been around for years - it is possible to debug Elixir code but requires a workaround and the GUI doesn't really understand it very well. It would be great for developer UX if the visual debugger worked seamlessly with Elixir code.

Expected results: Make the debugger work

Knowledge prerequisites: Elixir, Erlang, wxWidgets

Possible Mentors: Bryan Hunt

Idea #4: Dead code detection - generate code coverage information for a running system

The Erlang tool cover can be used to generate code coverage information. Several projects have used this tool in order to generate code coverage information for tests, e.g (alfert/coverex)[https://github.com/alfert/coverex] and (parroty/excoveralls)[https://github.com/parroty/excoveralls].

Expected results:

A tool, library, or mix task by which the user could run and use their system in a normal manner - perhaps subjecting it to a barage of integration tests, manual tests, or even put it into production. Then, perhaps a couple of days later, issue a command, and receive a detailed report of unused code.

Knowledge prerequisites:

Elixir / mix / cover

Possible Mentors:

Bryan Hunt

Idea #X: TITLE

Description.

Expected results:

Knowledge prerequisites:

Possible Mentors:

Clone this wiki locally