First of all - you are welcome to contribute, Memcode is a joint effort.
Feel free to ask questions/propose features in github issues, or email contact@memcode.com.
If you would like to develop in the browser, you can simply open Github Codespaces - after a few minutes of waiting, in the PORTS tab, a few ports will appear. Click on the port 3000. This will open a browser window, where you can see normal memcode.com ui. You can now edit both frontend and backend code in Github Codespaces - the changes will get reflected in the ui automatically.
When developing in Github Codespaces, please username&password to register.
- Install PostgreSQL (any modern should work, for example v14.17 and v16.9 certainly work)
- Go to postgres console:
psql postgres(as the default postgres superuser) - Create a
memcodeuser with password:CREATE ROLE memcode WITH LOGIN PASSWORD 'memcode';. - Give the user permission to create databases:
ALTER ROLE memcode CREATEDB;. - Create a new development database 'memcode':
make db-reset. This will create the raw database for you - a schema and a few necessary database rows.
Note
The project uses a PostgreSQL user named memcode with password memcode for the database memcode. All database commands in the Makefile are configured to use these credentials.
-
Copy the example environment file with
cp env.example.js env.jsFor basic development you do not need to change anything in this file.
- Install node v22.19.0
- Install npm
- Run
npm install
- Run
make frontend-webpack(compiles the frontend code) - Run
make start(starts the node server) - Go to http://localhost:3000, and enjoy the development!
Locally, please use username&password to sign up.
