Brmodelo app
BRMW is a free open source entity-relationship database modeling tool. We're working to make learning database modeling simple and accessible for everyone.
> [!IMPORTANT] > ## 🚧 V2 Migration in Progress > > The application is currently migrating to **v2**. This includes: > - Full migration from AngularJS to **React** > - Rewrite of all editors > - Bug fixes and usability improvements > - New **NoSQL** modeling support > > **This repository is temporarily out of sync with the live application at [app.brmodeloweb.com](https://app.brmodeloweb.com/).** > > Until the migration is complete (over the next few weeks), we will **not** be updating this publ... The project is written primarily in JavaScript, distributed under the Apache License 2.0 license, first published in 2016. It has gained significant community traction with 1,688 stars and 65 forks on GitHub. Key topics include: angularjs, database, database-modeling, entity-relationship-diagram, javascript.
[!IMPORTANT]
🚧 V2 Migration in Progress
The application is currently migrating to v2. This includes:
- Full migration from AngularJS to React
- Rewrite of all editors
- Bug fixes and usability improvements
- New NoSQL modeling support
This repository is temporarily out of sync with the live application at app.brmodeloweb.com.
Until the migration is complete (over the next few weeks), we will not be updating this public repository nor accepting external contributions. Once the migration is finalized, the repo will be updated with the new version.
Thank you for your patience!
app.brmodeloweb.com
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --> <!-- ALL-CONTRIBUTORS-BADGE:END -->Web application for database modeling and teaching
Released under the Apache License 2.0
Dependencies
To run this application you'll need:
- EditorConfig
- Node.js version 20.x (Strongly recommended to install it via nvm or n)
- Yarn version 1.x
- MongoDB Community Edition version 4.x (Check installation guides)
Running application
- Install dependencies:
yarn install - Duplicate
.env.exampleand rename it to.env - Make sure you have MongoDB running (To know more: MacOS, Windows, CentOS, Ubuntu or Debian)
- Start frontend:
yarn start:frontend - Start server:
yarn start:dev - Access it: http://localhost:9000/
Running with docker-compose
Note: Docker setup is still a work in progress and does not offer a good developer experience. For now we recommend you to run the project locally following the instructions listed above. If you still want to use docker, here's how:
- Make sure you have Docker Desktop running
- Start docker:
docker-compose upordocker-compose up -d - Access it: http://localhost:9000/
- Once your done, finish docker:
docker-compose down
Tests
Setup tests
- Duplicate
cypress.env.example.jsonand rename it tocypress.env.json - Update
cypress.env.jsonwith valid user credentials (Username and password)
[!WARNING]
The data from the accound you set incypress.env.jsonwill be wiped out after the tests run.
So, don't use your real account here!
E2E tests
To run E2E tests you have two options:
- Run headless mode in your terminal window:
yarn test:cy - Run interactive mode:
yarn cy:open
Unit Tests
To run the unit tests you have two options:
yarn testto run all the tests and collect the coverage report. Or;- Execute in a
watchmode by runningyarn test:watch
Production environments
- Stable: https://app.brmodeloweb.com
- Staging: https://brmodelo-stage.herokuapp.com
Contributors ✨
Thanks goes to these wonderful people (emoji key):
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --> <!-- prettier-ignore-start --> <!-- markdownlint-disable --> <table> <tbody> <tr> <td align="center" valign="top" width="14.28%"><a href="https://github.com/miltonbsn"><img src="https://avatars2.githubusercontent.com/u/881231?v=4?s=100" width="100px;" alt="Milton Bittencourt de Souza Neto"/><br /><sub><b>Milton Bittencourt de Souza Neto</b></sub></a><br /><a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=miltonbsn" title="Code">💻</a> <a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=miltonbsn" title="Tests">⚠️</a> <a href="https://github.com/brmodeloweb/brmodelo-app/issues?q=author%3Amiltonbsn" title="Bug reports">🐛</a> <a href="#maintenance-miltonbsn" title="Maintenance">🚧</a></td> <td align="center" valign="top" width="14.28%"><a href="http://id.etc.br"><img src="https://avatars3.githubusercontent.com/u/301545?v=4?s=100" width="100px;" alt="Idmar Ramos Junior (Id)"/><br /><sub><b>Idmar Ramos Junior (Id)</b></sub></a><br /><a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=idmarjr" title="Code">💻</a> <a href="#design-idmarjr" title="Design">🎨</a> <a href="#projectManagement-idmarjr" title="Project Management">📆</a> <a href="#maintenance-idmarjr" title="Maintenance">🚧</a></td> <td align="center" valign="top" width="14.28%"><a href="https://about.me/feekosta"><img src="https://avatars3.githubusercontent.com/u/13004903?v=4?s=100" width="100px;" alt="Felipe de Souza da Costa"/><br /><sub><b>Felipe de Souza da Costa</b></sub></a><br /><a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=feekosta" title="Code">💻</a> <a href="#infra-feekosta" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="https://github.com/brmodeloweb/brmodelo-app/pulls?q=is%3Apr+reviewed-by%3Afeekosta" title="Reviewed Pull Requests">👀</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/oicramps"><img src="https://avatars.githubusercontent.com/u/7519115?v=4?s=100" width="100px;" alt="Márcio Santos"/><br /><sub><b>Márcio Santos</b></sub></a><br /><a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=oicramps" title="Code">💻</a> <a href="https://github.com/brmodeloweb/brmodelo-app/pulls?q=is%3Apr+reviewed-by%3Aoicramps" title="Reviewed Pull Requests">👀</a></td> <td align="center" valign="top" width="14.28%"><a href="https://www.linkedin.com/in/telmo-trooper/"><img src="https://avatars.githubusercontent.com/u/9438853?v=4?s=100" width="100px;" alt="Telmo "Trooper""/><br /><sub><b>Telmo "Trooper"</b></sub></a><br /><a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=telmotrooper" title="Code">💻</a></td> <td align="center" valign="top" width="14.28%"><a href="https://www.linkedin.com/in/arthurmota/"><img src="https://avatars.githubusercontent.com/u/25749372?v=4?s=100" width="100px;" alt="Arthur Mota"/><br /><sub><b>Arthur Mota</b></sub></a><br /><a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=ArthurMota9" title="Code">💻</a> <a href="https://github.com/brmodeloweb/brmodelo-app/pulls?q=is%3Apr+reviewed-by%3AArthurMota9" title="Reviewed Pull Requests">👀</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/joaomfiumari"><img src="https://avatars.githubusercontent.com/u/7141759?v=4?s=100" width="100px;" alt="joaomfiumari"/><br /><sub><b>joaomfiumari</b></sub></a><br /><a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=joaomfiumari" title="Code">💻</a> <a href="#infra-joaomfiumari" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td> </tr> <tr> <td align="center" valign="top" width="14.28%"><a href="https://walmyr.dev"><img src="https://avatars.githubusercontent.com/u/2768415?v=4?s=100" width="100px;" alt="Walmyr"/><br /><sub><b>Walmyr</b></sub></a><br /><a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=wlsf82" title="Tests">⚠️</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/Tarliton"><img src="https://avatars.githubusercontent.com/u/7471617?v=4?s=100" width="100px;" alt="Tárliton Basso de Godoy"/><br /><sub><b>Tárliton Basso de Godoy</b></sub></a><br /><a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=Tarliton" title="Code">💻</a> <a href="#infra-Tarliton" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td> <td align="center" valign="top" width="14.28%"><a href="http://johnfercher.com"><img src="https://avatars.githubusercontent.com/u/4752636?v=4?s=100" width="100px;" alt="John Fercher"/><br /><sub><b>John Fercher</b></sub></a><br /><a href="#financial-johnfercher" title="Financial">💵</a></td> <td align="center" valign="top" width="14.28%"><a href="https://www.ofnet.com.br"><img src="https://avatars.githubusercontent.com/u/3935214?v=4?s=100" width="100px;" alt="Henrique Ferraz"/><br /><sub><b>Henrique Ferraz</b></sub></a><br /><a href="#financial-henriqueferraz" title="Financial">💵</a></td> <td align="center" valign="top" width="14.28%"><a href="http://www.paulo.eti.br"><img src="https://avatars.githubusercontent.com/u/2488937?v=4?s=100" width="100px;" alt="Paulo Ricardo Stradioti"/><br /><sub><b>Paulo Ricardo Stradioti</b></sub></a><br /><a href="#financial-paulostradioti" title="Financial">💵</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/salimNabbout"><img src="https://avatars.githubusercontent.com/u/75948052?v=4?s=100" width="100px;" alt="Salim Nabbout"/><br /><sub><b>Salim Nabbout</b></sub></a><br /><a href="#financial-salimNabbout" title="Financial">💵</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/ailtonferrazjr"><img src="https://avatars.githubusercontent.com/u/52893006?v=4?s=100" width="100px;" alt="Justin Ferraz"/><br /><sub><b>Justin Ferraz</b></sub></a><br /><a href="#financial-ailtonferrazjr" title="Financial">💵</a></td> </tr> <tr> <td align="center" valign="top" width="14.28%"><a href="https://github.com/walissonkuper"><img src="https://avatars.githubusercontent.com/u/185857098?v=4?s=100" width="100px;" alt="walissonkuper"/><br /><sub><b>walissonkuper</b></sub></a><br /><a href="#financial-walissonkuper" title="Financial">💵</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/dpldpc"><img src="https://avatars.githubusercontent.com/u/20994048?v=4?s=100" width="100px;" alt="David de Souza"/><br /><sub><b>David de Souza</b></sub></a><br /><a href="#financial-dpldpc" title="Financial">💵</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/JeversonMisaelDaCruz"><img src="https://avatars.githubusercontent.com/u/143036544?v=4?s=100" width="100px;" alt="Jeverson misael da cruz filho"/><br /><sub><b>Jeverson misael da cruz filho</b></sub></a><br /><a href="#financial-JeversonMisaelDaCruz" title="Financial">💵</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/joaoMarceloDelfino"><img src="https://avatars.githubusercontent.com/u/150634109?v=4?s=100" width="100px;" alt="João Marcelo de Oliveira Delfino"/><br /><sub><b>João Marcelo de Oliveira Delfino</b></sub></a><br /><a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=joaoMarceloDelfino" title="Code">💻</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/estefanotuyama"><img src="https://avatars.githubusercontent.com/u/56903306?v=4?s=100" width="100px;" alt="Estéfano Tuyama Gerassi"/><br /><sub><b>Estéfano Tuyama Gerassi</b></sub></a><br /><a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=estefanotuyama" title="Code">💻</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/Felipecluiz"><img src="https://avatars.githubusercontent.com/u/32517289?v=4?s=100" width="100px;" alt="Felipecluiz"/><br /><sub><b>Felipecluiz</b></sub></a><br /><a href="https://github.com/brmodeloweb/brmodelo-app/commits?author=Felipecluiz" title="Code">💻</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/EduardoCAHE"><img src="https://avatars.githubusercontent.com/u/98930150?v=4?s=100" width="100px;" alt="Eduardo Castro"/><br /><sub><b>Eduardo Castro</b></sub></a><br /><a href="#financial-EduardoCAHE" title="Financial">💵</a></td> </tr> <tr> <td align="center" valign="top" width="14.28%"><a href="https://github.com/claudiosanavria"><img src="https://avatars.githubusercontent.com/u/274329671?v=4?s=100" width="100px;" alt="claudiosanavria"/><br /><sub><b>claudiosanavria</b></sub></a><br /><a href="#financial-claudiosanavria" title="Financial">💵</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/TBMFOCABR"><img src="https://avatars.githubusercontent.com/u/175538326?v=4?s=100" width="100px;" alt="TBMFOCABR"/><br /><sub><b>TBMFOCABR</b></sub></a><br /><a href="#financial-TBMFOCABR" title="Financial">💵</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/fabriciocore"><img src="https://avatars.githubusercontent.com/u/96549758?v=4?s=100" width="100px;" alt="fabriciocore"/><br /><sub><b>fabriciocore</b></sub></a><br /><a href="#financial-fabriciocore" title="Financial">💵</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/Julsh2"><img src="https://avatars.githubusercontent.com/u/66392008?v=4?s=100" width="100px;" alt="Julianna Lemos"/><br /><sub><b>Julianna Lemos</b></sub></a><br /><a href="#financial-Julsh2" title="Financial">💵</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/VIVIANECOELHO1"><img src="https://avatars.githubusercontent.com/u/128558495?v=4?s=100" width="100px;" alt="VIVIANECOELHO1"/><br /><sub><b>VIVIANECOELHO1</b></sub></a><br /><a href="#financial-VIVIANECOELHO1" title="Financial">💵</a></td> </tr> </tbody> </table> <!-- markdownlint-restore --> <!-- prettier-ignore-end --> <!-- ALL-CONTRIBUTORS-LIST:END -->This project follows the all-contributors specification. Contributions of any kind are welcome — please note that external contributions are temporarily paused while the v2 migration is in progress (see the notice at the top of this README).
Contributors
Showing top 12 contributors by commit count.
