CARVIEW |
Select Language
HTTP/2 200
date: Thu, 24 Jul 2025 06:15:52 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
x-robots-tag: none
etag: W/"8d2a49ed68eb7fc984ca3dfafc5d63c3"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=rBYwldrlRJSchlsj7tIqp0jdmkVwNqTth144ttxUKRCi%2BiNWqKDu1ftHzyeoS11KAv5AqWF1KfR1MW4%2BRfxDRmcfqgc4x2KilqDy5m9J6dF2C6u%2F3BX%2BBCQHRqQk6uyreBaxcMNuk77gB6B69%2BotTpACWUEI7%2BX1sSTZ%2BtEpX8q%2BAPkH7smjzYXqS4opC4SF2Av8e%2FTzeIpZaHP%2Bp529iWDpGnTxolVibsv%2B5P7BS4gQsgF0Gj2MEV2039faCUO0AKBLK1ZaYUz7A1Td%2FW0IdA%3D%3D--qq%2B8uSUMpt1h8%2Bj6--1Ay%2FcMXpt0hdaGjPS%2F64sg%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.1417582121.1753337751; Path=/; Domain=github.com; Expires=Fri, 24 Jul 2026 06:15:51 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Fri, 24 Jul 2026 06:15:51 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: D82A:394F4C:148979B:18D6270:6881CF97
Getting started · afaneca/myfin-api Wiki · GitHub
Skip to content
Navigation Menu
{{ message }}
-
-
Notifications
You must be signed in to change notification settings - Fork 11
Getting started
António Faneca edited this page Feb 13, 2025
·
14 revisions
You can get started using MyFin in one of 2 ways:
- Through Docker or Docker Compose
- Manually installing the api and frontend in your web server/machine
We provide the following docker images:
- myfin-api - docker image for the API, hosted by ghcr.io
- myfin - docker image for the web frontend, hosted by ghcr.io
We also maintain a docker-compose config you can use to bootstrap the whole platform (api + web) by simply running:
docker compose up
- Upload this project into your server (using
git clone
is the recommended path)
git clone https://github.com/afaneca/myfin-api
- Create
.env
file in the root directory with the following structure (you can use.env.example
as a starting point):
# DB
DB_NAME=XYZ # a new DB will be created with this name if it doesn't exist already
DB_USER=XYZ
DB_PW=XYZ
DB_HOST=localhost
DB_PORT=1234
DATABASE_URL="mysql://${DB_USER}:${DB_PW}@${DB_HOST}:${DB_PORT}/${DB_NAME}?schema=public"
# EMAIL (Optional, used for the password recovery flow)
SMTP_HOST="XYZ"
SMTP_PORT=465
SMTP_SECURE=true
SMTP_USER="XYZ"
SMTP_PASSWORD="XYZ"
SMTP_FROM="xyz@xyz.com"
# CUSTOM OPTIONS
LOGGING="false" # THINK TWICE ABOUT ENABLING IN PROD
BYPASS_SESSION_CHECK="false" # DO NOT ENABLE IN PROD
ENABLE_USER_SIGNUP=true
PORT=3001 # optional; defines the port where the app will be running (defaults to `3001`)
- Install the required dependencies:
npm ci
- Generate the DB schema:
npm run db:deploy
- Run the NodeJS project:
npm run start
You can also run the project through tools like pm2
, using /dist/server.js
(after compiling the code) as the entry point for the app.
Now, you're ready to setup and connect your api instance to the frontend of your choosing (you can find the android app here and the web app here)!
- Replace the old version of the project files withe the updates ones:
git pull
- Update the dependencies
npm ci
- Update the DB schema:
npm run db:deploy
- Restart/reload the app
If you're migrating from a pre-5.0.0 version of the platform, you can keep all your data, by reusing the same DB schema. All you got to do is replace the command in step 5) with this two:
npx prisma db push --accept-data-loss
npx prisma migrate resolve --applied 0_init
Clone this wiki locally
You can’t perform that action at this time.