{"id":21748363,"url":"https://github.com/thuyencode/file-uploader-the-odin-project","last_synced_at":"2026-04-12T03:36:42.106Z","repository":{"id":263092968,"uuid":"887364015","full_name":"thuyencode/file-uploader-the-odin-project","owner":"thuyencode","description":"Project: File Uploader | The Odin Project","archived":false,"fork":false,"pushed_at":"2024-12-08T09:44:18.000Z","size":826,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-25T22:58:02.994Z","etag":null,"topics":["express","nodejs","react","theodinproject"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thuyencode.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-12T16:05:40.000Z","updated_at":"2024-12-08T09:44:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"72762602-35b0-4016-8dcf-0ec56b34a8cd","html_url":"https://github.com/thuyencode/file-uploader-the-odin-project","commit_stats":null,"previous_names":["thuyencode/file-uploader-the-odin-project"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thuyencode%2Ffile-uploader-the-odin-project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thuyencode%2Ffile-uploader-the-odin-project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thuyencode%2Ffile-uploader-the-odin-project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thuyencode%2Ffile-uploader-the-odin-project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thuyencode","download_url":"https://codeload.github.com/thuyencode/file-uploader-the-odin-project/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244723947,"owners_count":20499359,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["express","nodejs","react","theodinproject"],"created_at":"2024-11-26T08:13:12.530Z","updated_at":"2026-04-12T03:36:37.083Z","avatar_url":"https://github.com/thuyencode.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Project: File Uploader\n\n[More details information here.](https://www.theodinproject.com/lessons/nodejs-file-uploader)\n\n👉 [Check the screenshots of this project](#screenshots) 📸\n\n**Tech stacks:**\n\n|                                                                                                                                             Frontend                                                                                                                                             |                                                                                              Backend                                                                                              |\n| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |\n| [![front-end's tech stack](https://go-skill-icons.vercel.app/api/icons?i=vite,ts,react,reactquery,tailwind,daisyui)](https://github.com/LelouchFR/skill-icons) \u003cbr /\u003e and [Tanstack Router](https://tanstack.com/router/latest), [Axios](https://axios-http.com), [Valibot](https://valibot.dev) | [![back-end's tech stack](https://go-skill-icons.vercel.app/api/icons?i=nodejs,ts,express,postgresql,prisma)](https://github.com/LelouchFR/skill-icons) \u003cbr /\u003e and [Valibot](https://valibot.dev) |\n\n## Getting started\n\n### 1. Installing dependencies\n\nThis project use some of Bun APIs so make sure [Bun is installed](https://bun.sh).\n\nThen process to install dependencies:\n\n```sh\nbun i\n```\n\n### 2. Setting-up the database\n\nYour need to install PostgreSQL first using your OS's package manager, an installer file or using Docker (recommended).\n\nConfigure the host address, port number, username, password, a database according to [`.env.example`](./.env.example).\n\nCopy the file [`.env.example`](./.env.example) into `.env.production.local` and `.env.development.local` and edit the env variables' values.\n\nThen use one of these commands to migrate the database:\n\n```text\n# If you're in development mode\nbun prisma:dev:migrate\n\n# If you're in production mode\nbun prisma:dev:migrate\n```\n\n## 3. Running the project\n\nFirst, install all the dependencies:\n\nTo run the dev server:\n\n```sh\nbun dev\n```\n\nTo bundle and run the project in production:\n\n```sh\nbun run build\nbun start\n```\n\n## Screenshots\n\n| ![Home page](./images/home_page.png) |\n| :----------------------------------: |\n|              Home page               |\n\n| ![Sign-in page](./images/sign_in.png) |\n| :-----------------------------------: |\n|             Sign-in page              |\n\n| ![Files page](./images/files_page.png) |\n| :------------------------------------: |\n|               Files page               |\n\n| ![File sharing page](./images/file_sharing.png) |\n| :---------------------------------------------: |\n|                File sharing page                |\n\n| ![File uploader page](./images/file_uploading.png) |\n| :------------------------------------------------: |\n|                 File uploader page                 |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthuyencode%2Ffile-uploader-the-odin-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthuyencode%2Ffile-uploader-the-odin-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthuyencode%2Ffile-uploader-the-odin-project/lists"}