# memcode
**Repository Path**: watching/memcode
## Basic Information
- **Project Name**: memcode
- **Description**: Spaced-repetition: with real formatting.
- **Primary Language**: JavaScript
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2024-11-26
- **Last Updated**: 2024-12-14
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
Memcode
Flashcards for coders and scientists. Open-source, free for all.
## Links
**Website**: memcode.com
**Patreon**: patreon.com/memcode
**Email**: contact@memcode.com
**Twitter**: twitter.com/memcodeapp
**Alternative.to**: alternativeto.net/software/memcode/about
## Contributing
First of all - you are very welcome to contribute, Memcode is a joint effort.
Before contributing, it's a good idea to create a related issue.
#### Create a database postgres user with a password.
1. Install PostgreSQL.
2. Go to postgres console: `psql postgres`.
3. Create a `postgres` user with password: `CREATE ROLE postgres WITH LOGIN PASSWORD 'postgres';`.
4. Give the user a permission to create dbs, own all extensions, etc.: `ALTER ROLE postgres with superuser;`.
#### Copypaste environment variables.
1. Copy the example environment file with `cp env.example.js env.js`
2. Insert the necessary values - all those marked with "Required for local development"
#### Install the needed libraries.
1. Install npm.
2. Run `npm install`
#### Set up the database.
1. Create a new development database 'memcode': `make db-reset`.
This will create the raw database for you - schema and a few necessary database rows.
#### Start code compilers and server.
1. Run `make all` in your terminal.
This will start:
- `make backend-webpack` (compiles the backend code on every change)
- `make frontend-webpack` (compiles the frontend code on every change)
- `make start` (starts the node server)
for you.
You can also run these separately if you wish to see the individual output.
2. Go to http://localhost:3000, and enjoy the development!