|
1 | | -# Qua |
| 1 | + |
2 | 2 |
|
3 | | -Open source QDA software running on Vue + Nuxt.js + Supabase and a little bit of Tailwind CSS. |
| 3 | + |
| 4 | + |
| 5 | + |
4 | 6 |
|
5 | | -If you are going to develop this project yourself, you will need to create a `.env` file in the root of the project with the following content: |
6 | | - |
7 | | -```bash |
8 | | -SUPABASE_URL=https://your-supabase-url.supabase.co |
9 | | -SUPABASE_KEY=your-supabase-key |
10 | | -``` |
| 7 | +Open source QDA software, because I don't want to pay for one and I got tired of using excel. |
11 | 8 |
|
12 | 9 | That should do it for now...more to come. |
13 | 10 |
|
14 | | -## Setup |
| 11 | +# running locally |
15 | 12 |
|
16 | | -Make sure to install the dependencies: |
17 | | - |
18 | | -```bash |
19 | | -# npm |
20 | | -npm install |
21 | | - |
22 | | -# pnpm |
23 | | -pnpm install |
24 | | - |
25 | | -# yarn |
26 | | -yarn install |
| 13 | +If you are going to develop this project yourself, you will need to create a `.env` file in the root of the project with the following content: |
27 | 14 |
|
28 | | -# bun |
29 | | -bun install |
| 15 | +``` |
| 16 | +SUPABASE_URL=https://your-supabase-url.supabase.co (replace with your supabase url) |
| 17 | +SUPABASE_KEY=your-supabase-key (replace with your supabase key) |
| 18 | +BASE_URL=http://localhost:3000 (replace with your local development url) |
| 19 | +SUPABASE_AUTH_GITHUB_CLIENT_ID=your-github-client-id (optional if using github auth) |
| 20 | +SUPABASE_AUTH_GITHUB_CLIENT_SECRET=your-github-client-secret (optional if using github auth) |
| 21 | +LOCAL_DEV=true (optional if you will be resetting your database often) |
30 | 22 | ``` |
31 | 23 |
|
32 | | -## Development Server |
| 24 | +The `LOCAL_DEV` variable was created to handle local Supabase storage. When initializing the local Supabase instance, there is currently no way to popultate objects in the `files` storage bucket. This flag points the application to use data from the `public/samples/` directory instead of fetching a signed url from the Supabase storage endpoint. Keep this in mind if you plan to upload data locally as the data will not be able to be accessed. Reference the [FileViewerPanel](./components/FileViewerPanel.vue) component for this implementation. |
33 | 25 |
|
34 | | -Start the development server on `http://localhost:3000`: |
| 26 | +## Supabase |
35 | 27 |
|
36 | | -```bash |
37 | | -# npm |
38 | | -npm run dev |
| 28 | +This project takes advantage of [Supabase](https://supabase.com/) for authentication, database, and storage for now. You have two options for setting up Supabase: |
39 | 29 |
|
40 | | -# pnpm |
41 | | -pnpm run dev |
| 30 | +1) Create a project on [Supabase](https://supabase.com/) and use the provided URL and key in your `.env` file. All data will be stored in your Supabase project on their servers. **TODO: Need to add information on how to set up the database schema.** |
| 31 | +2) Run a local instance of Supabase using [Supabase CLI](https://supabase.com/docs/guides/cli/local-development). Grab the URL and key from the CLI output and use them in your `.env` file. All data will be stored locally on your machine. This is recommended for development as this repo contains migrations and seed information in [./supabase](./supabase/). **Not recommended for long term usage as you may lose your data if you are not careful. Instead, use the Supabase Platform resources to ensure your data is backed up, i.e. option 1.** (Requires Docker) |
42 | 32 |
|
43 | | -# yarn |
44 | | -yarn dev |
45 | | - |
46 | | -# bun |
47 | | -bun run dev |
48 | | -``` |
| 33 | +Once you have set up Supabase, you can start the application locally. |
49 | 34 |
|
50 | | -## Production |
| 35 | +## running the app |
51 | 36 |
|
52 | | -Build the application for production: |
| 37 | +Make sure to install the dependencies: |
53 | 38 |
|
54 | 39 | ```bash |
55 | 40 | # npm |
56 | | -npm run build |
57 | | - |
58 | | -# pnpm |
59 | | -pnpm run build |
60 | | - |
61 | | -# yarn |
62 | | -yarn build |
63 | | - |
64 | | -# bun |
65 | | -bun run build |
| 41 | +npm install |
66 | 42 | ``` |
67 | 43 |
|
68 | | -Locally preview production build: |
| 44 | +Start the development server on `http://localhost:3000`: |
69 | 45 |
|
70 | 46 | ```bash |
71 | 47 | # npm |
72 | | -npm run preview |
73 | | - |
74 | | -# pnpm |
75 | | -pnpm run preview |
| 48 | +npm run dev |
| 49 | +``` |
76 | 50 |
|
77 | | -# yarn |
78 | | -yarn preview |
| 51 | +You may want to change the host to `127.0.0.1` if `localhost` is acting slow for you. |
79 | 52 |
|
80 | | -# bun |
81 | | -bun run preview |
82 | | -``` |
| 53 | +## production / deployment |
83 | 54 |
|
84 | | -Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information. |
| 55 | +Check out the [Nuxt deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information on building and deploying. This project is currently configured for client-side-rendering (CSR) only so you can serve it or deploy it on any static hosting provider. |
0 commit comments