💓 First of all, we'd love for you to contribute to our source code. 💓
We believe in a welcoming and inclusive environment / community, that's why we enforce our Code of Conduct. See the Contributor Covenant Code of Conduct for more information.
To add a contribution to Alva (improve its features, fix issues), get the source of the application itself, and if you don't already have a Alva compatible styleguide, the kickstart styleguide (alva-design):
git clone [email protected]:meetalva/alva.git
yarn
yarn tsc -b -w
# In a second terminal window
yarn webpack -w
# In a third terminal window
yarn alva
If you don't have a compatible styleguide, follow the next steps:
git clone [email protected]:meetalva/alva-design.git
npm i && npm build
To generate a Typedoc documentation of all classes, run
npm run docs
then open build/docs/globals.html in your browser.
A good first contribution could be
Issues should be provided as branches starting with "feat/", as pull requests.
We use strict tsconfig and TSLint rules, as well as Prettier. When it comes to naming things, we follow the TypeScript guidelines, and we do not abbreviate names (except for trivial names like HTML).
Editorconfig helps developers define and maintain consistent coding styles between different editors and IDEs. There are a lot of plugins for editors/IDEs that support .editorconfig.
You'll find more information, extensions for editors and IDEs at the editorconfig page.
For commit messages we use the angular commit guidelines with one exception: Please put the GitHub issue reference into the header, e.g.
feat(store): patterns path configurable (fixes #214)
As tools, we use commitlint and commitizen.
Alva is a React application using MobX as state management and Electron to provide a stand-alone application.
Additionally, it ships with a living styleguide project, which consists of Patternplate React components.
All the sources of Alva are located in src
, divided into the following folders:
@MobX.observer
. The store contains the Alva projects and pages the user edits, as well as the styleguide and styleguide analyzers, the logic to interpret your frontend pattern components.Just drop us an email or write a direct message on Twitter to @meetalva