- NodeJS and NPM installed (if not installed, I recommend using NVM to install them).
Uses sst ion, install here: https://ion.sst.dev/
It is using drizzle + libsql and in development it saves the the data to /tmp/wolf-project.db
file, should create the file and push migrations when you run npm run dev
or npm run migrate
. To add users to the database you can use npm run add-user "YOUR_EMAIL" "YOUR NAME"
.
Obtaining API Keys from AWS
- Search for
IAM
and select the option with the descriptionManage access to AWS resources
. - Click on the Users tab on the left.
- Click
Create user
. - Enter a username and click next.
- Choose the
Attach policies directly
option and in thePermissions policies
section, check theAdministratorAccess
box, then click next. - Click
Create user
, which redirects you to the Users page, select the user you created. - Under
Access key 1
, click theCreate access key
button. - Select the
CLI
option, click next, and thenCreate access key
. - Copy the
Access key ID
andSecret access key
values into the .env file underAWS_ACCESS_KEY_ID
andAWS_SECRET_ACCESS_KEY
, respectively.
Setting up AWS SES
- Search for
SES
and select the option with the descriptionEmail Sending and Receiving Service
. - On the right side of the navigation bar, ensure that it has selected Frankfurt (eu-central-1) region, if not then select it.
- Navigate to Get set up subview, to acccess it click on it on the menu found on the left.
- Follow Get set up tutorial to verify email address of your choosing.
- Copy the .env.example file and rename it to .env.
- Fill in the .env file with the correct values. AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY from the AWS configuration steps above, EMAIL as the choosen email that was verified following setting up AWS SES step, PUBLIC_API_URL should be set for "https://localhost:4321" for dev enviorment, JWT_SECRET can be set to be any randomized string.
- Run
npm i
to install dependencies. - Start the backend with
npm run dev
in the root directory. You will be prompted for your STAGE_NAME. Deployment of your stack will take some time. - To start the frontend, open another terminal run
npm run dev-fe
.
You can test if the project builds with npm run build
and test if the types are correct with npm run typecheck
.