https://github.com/lelouchb/final-space-api
Final Space API : RESTful API based on the show Final Space.
https://github.com/lelouchb/final-space-api
api backend docusaurus2 express final-space finalspace frontend rest-api restful-api
Last synced: 9 months ago
JSON representation
Final Space API : RESTful API based on the show Final Space.
- Host: GitHub
- URL: https://github.com/lelouchb/final-space-api
- Owner: lelouchB
- License: bsd-3-clause
- Created: 2020-10-02T11:01:54.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2024-12-03T14:09:37.000Z (about 1 year ago)
- Last Synced: 2025-03-29T05:08:02.750Z (9 months ago)
- Topics: api, backend, docusaurus2, express, final-space, finalspace, frontend, rest-api, restful-api
- Language: JavaScript
- Homepage: https://finalspaceapi.com
- Size: 40 MB
- Stars: 78
- Watchers: 2
- Forks: 44
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# Final Space API
[](https://finalspaceapi.com)






The Final Space API is a RESTful API based on the television show [Final Space](https://en.wikipedia.org/wiki/Final_Space). All the data is taken from [Final Space wiki](https://final-space.fandom.com/wiki/Final_Space_Wiki).
## Project Structure
```
final-space-api
├───.github
│ ├───ISSUE_TEMPLATE
│ └───workflows
├───backend
│ ├───config
│ ├───controllers
│ ├───helpers
│ ├───images
│ │ ├───character
│ │ ├───episode
│ │ └───location
│ ├───models
│ └───routes
└───frontend
├───blog
├───docs
├───src
│ ├───css
│ └───pages
│ └───Components
│ ├───Body
│ └───Head
└───static
└───img
├───assets
└───pwa
├───android
├───chrome
├───firefox
└───msteams
```
## Installation ⭐
First, Clone this repo. Both the frontend and the backend need to be installed seperately.
```bash
git clone https://github.com/lelouchB/final-space-api.git
```
For **frontend** run the following commands.
```bash
cd frontend
npm install
npm run build
```
It is important that frontend is installed first and a `build` directory is created since the backend serves this `build` folder.
For **backend** run the following commands.
```bash
cd backend
npm install
```
## Starting the Development Server
Run the following command in the backend directory to start the development server at `PORT=8000` by default.
```bash
cd backend
npm run dev
```
This will start the development server at [http://localhost:8000](http://localhost:8000).
**Note :** If `build` folder doen't exist you will see an error at the baseURL i.e. `/`. Create the `build` folder to fix this issue.
## Get Contributing 🤩
First things first, In order to contribute you have to create a Pull Request from your forked repo which is a remote clone of this upstream repository.
1. Click this button at the top of screen to fork this repo, **don't forget to star the repository!** ⭐⭐

2. Next, clone this repository using
```bash
git clone https://github.com/lelouchB/final-space-api.git
```
3. It is critical to keep your forked repository in sync with the upstream repository so merge conflicts can be avoided:
```bash
git remote add upstream https://github.com/lelouchB/final-space-api.git
git fetch upstream
git pull upstream main
git push
```
4. Create a new branch to work upon
The branch name must be selected according to the issue
```bash
git checkout -b
```
5. After the contribution work is ready, go ahead and add it to the staging area:
```bash
git add -A
```
6. Now it is time to commit your changes and sync these changes to the forked repo:
```bash
git commit -m
git push origin
```
**Note :** Branch Name is the branch you created earlier
7. Issue a pull request from forked repo to this repo by clicking on `New Pull Request`:

8. Fill in the title and provide a concise description.
9. Wait for respose on the PR. Congratulations you just contributed to open source! 👏👏
### Contributing to Frontend
The frontend of this project is made with [Docusaurus](https://v2.docusaurus.io/docs/) and [React](https://reactjs.org/).
To start the dev server, run the following commands in `frontend` directory:
```bash
cd frontend
npm start
```
This will start the frontend dev server on [http://localhost:3000](http://localhost:3000).
After you have done with your contribution, create the production build by running the following commands:
```bash
cd frontend
npm run build
npm run serve
```
The last command will server the build folder on [http://localhost:3000](http://localhost:3000).
Make sure your contributions are reflected properly in this build.
**For more details related to installation and requirements please check the README in Frontend directory.**
### Contributing to Backend
The backend is made with **NodeJS**, **Express** and **MongoDB**.
Run the following commands to open the dev server.
```bash
cd backend
npm run dev
```
Head to [http://localhost:8000](http://localhost:8000), if a `build` folder is present in `frontend` directory then you will see the landing page of the project.
**For more details related to installation and requirements please check the README in Backend directory.**
## License
Final Space is created by Olan Rogers for [TBS](https://www.tbs.com/) and later picked by [Adult Swim](https://www.adultswim.com). The data and images are used without claim of ownership and belong to their respective owners.
This API is open source and uses a [BSD license](/LICENSE).