The self-hostable Loom alternative.
Learn more »
Website - Issue - Bug report
- Make unlimited recordings of your tab, desktop, and any application
- Share recordings with anyone using a public link
- Delete or un-list recordings after a specific timeframe
- Upload and share existing videos
-
Clone the repo into a public GitHub repository (or fork https://github.com/MarconLP/snapify/fork). If you plan to distribute the code, make sure to comply with our
LICENSE.md.git clone https://github.com/MarconLP/snapify.git
-
Go to the project folder
cd snapify -
Install packages with npm
npm i
-
Set up your .env file
-
Duplicate
.env.exampleto.env -
Use
openssl rand -base64 32to generate a key and add it underNEXTAUTH_SECRETin the .env file. -
Fill in the other variables
Configure DATABASE_URL
- Open Railway and click "Start a New Project", and select Provision "MySQL".
- Select the MySQL App and copy the
DATABASE_URLinto the.env.
Obtaining the Github API Credentials
- Open Github Developer Settings.
- Next, go to OAuth Apps from the side panel. Then click the "New OAuth App" button. Make sure to set
Authorization callback URLto<Snapify URL>/api/auth/callback/githubreplacing Snapify URL with the URI at which your application runs. - Copy the
Client IDasGITHUB_IDinto the.env. - Next, click "Generate a new client secret" and copy the
Client secretasGITHUB_SECRETinto the.env.
Obtaining the AWS S3 API Credentials
- Open B2 Cloud Storage Buckets.
- Create a new Bucket, make sure to set the bucket to private to make sure files are not being made publicly available.
- Copy the
EndpointasAWS_ENDPOINTand the Bucket name asAWS_BUCKET_NAMEinto the.env. Additionally you need to add theAWS_REGION, which is part of the endpoint and should look like this:us-east-005. - Next, go to Application Keys from the side panel. Then create a new Application Key, with full read and write access to the bucket.
- Copy the
keyIDasAWS_KEY_IDand theapplicationKeyasAWS_SECRET_ACCESS_KEYinto the.env.
-
-
Set up the database using the Prisma schema
npx prisma db push
-
Run (in development mode)
npm run dev
Be sure to set the environment variable NEXTAUTH_URL to the correct value. If you are running locally, as the documentation within .env.example mentions, the value should be http://localhost:3000.
# In a terminal just run:
npm run test:e2ePlease see our contributing guide at CONTRIBUTING.md
Distributed under the AGPLv3 License. See LICENSE.md for more information.