Skip to content

Commit 2c4fe53

Browse files
Update README.md
1 parent ffae7ad commit 2c4fe53

File tree

1 file changed

+96
-10
lines changed

1 file changed

+96
-10
lines changed

README.md

Lines changed: 96 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,102 @@
1-
# Notion IGDB autocomplete
1+
# Notion IGDB autocomplete [![Any Question ?](https://img.shields.io/badge/Reddit-FF4500?logo=reddit&logoColor=white)](https://www.reddit.com/r/Notion/comments/17dw8js/created_integration_to_automatically_fill_in/?utm_source=share&utm_medium=web2x&context=3)
2+
3+
This Go project aims to automate the completion of video game information in a Notion database. It simplifies the task of collecting and updating details of video games, including titles, franchises, genres, platforms, and release dates, by connecting to the Notion database.
24

35
![demo](https://github.com/RedSkiesReaperr/notion-igdb-autocomplete/assets/64477486/02de6e81-974f-4ed1-948a-e261cbd29eba)
46

5-
## How does it works
6-
Watch the database you set up. Waits for a page with a title that matchs the following pattern: `{{GAME_TITLE}}`. Then it asks for IGDB informations and it fills the Notion page.
7+
## Key Features
8+
- Notion Integration: Connects to your Notion database to extract and update video game information.
9+
- Automated Search: Performs online searches to retrieve up-to-date information about video games.
10+
- Database Updates: Updates video game entries in Notion with the latest details, such as titles, franchises, genres, platforms, and release dates.
711

8-
## Requirements
12+
## System Requirements
913
- [Docker](https://www.docker.com/products/docker-desktop/)
14+
- Access to a Notion database and a Notion integration key (see Configuration section for details)
15+
- Access to IGDB API by a client id and client secret (see Configuration section for details)
16+
17+
## Installation
18+
19+
1. Clone this repository to your local machine:
20+
```sh
21+
git clone https://github.com/RedSkiesReaperr/notion-igdb-autocomplete
22+
cd notion-igdb-autocomplete
23+
```
24+
25+
## Configuration
26+
27+
1. Create environment configuration file:
28+
```sh
29+
cp ./example.env .env
30+
```
31+
32+
2. Create a Notion database (or configure an already existing one) with the following properties:
33+
- Title:
34+
- Name: Title
35+
- Type: Title
36+
- Platforms:
37+
- Name: Platforms
38+
- Type: Multi-select
39+
- Genres:
40+
- Name: Genres
41+
- Type: Multi-select
42+
- Franchises:
43+
- Name: Franchises
44+
- Type: Multi-select
45+
- Release date:
46+
- Name: Release date
47+
- Type: Date
48+
49+
3. Create a private Notion integration on your account by following the [getting started page](https://developers.notion.com/docs/create-a-notion-integration#create-your-integration-in-notion) before the "Setting up the demo locally" step.
50+
51+
4. Put your integration API secret as value of the `NOTION_API_SECRET` in your `.env` file.
52+
53+
5. Go on your Notion page, click on the "..." button and on the "copy link" option. As mentionned in [environment variables section](https://developers.notion.com/docs/create-a-notion-integration#environment-variables), Get the ID of your page and put it as value of the `NOTION_PAGE_ID` in your `.env` file.
54+
55+
> ***At this point you should have a Notion database, with all mandatory properties. You should have created a private Notion integration connected with you database. You should have a `.env` file in your cloned project directory who have two values filled: `NOTION_API_SECRET` and `NOTION_PAGE_ID`***
56+
57+
6. Create a Twitch Developer application (needed to use IGDB API) by following the "Account Creation" of [getting started page](https://api-docs.igdb.com/#getting-started). This will give you steps to get your `IGDB_CLIENT_ID` & `IGDB_SECRET`. Afterward fill `IGDB_CLIENT_ID` & `IGDB_SECRET` in your `.env` file. ***If you need more detailed explanations, follow the 'More details about IGDB configuration' section below***.
58+
59+
🎉 **Congrats, configuration done!** 🎉
60+
61+
### More details about IGDB configuration
62+
Once you are on the Twitch developers portal:
63+
1. On the left menu go in the "Applications" section
64+
2. Then click on the "Register your application" purple button
65+
3. In the registration form:
66+
1. Name field: you fill whatever you want.
67+
2. Second field (about OAuth things): `http://localhost`.
68+
3. Click on create button
69+
4. Once created it takes you to the applications listing, then click on "Manage" button for your newly created app.
70+
5. Under the captcha, you have a field "client identifier" (or something like that). This value is your `IGDB_CLIENT_ID`
71+
6. Click on the "New secret" button. It gives you the `IGDB_SECRET`
72+
73+
## Usage
74+
Install & configure the application following the steps above.
75+
76+
1. Run the application:
77+
```sh
78+
docker-compose up
79+
```
80+
2. In you Notion database create a new entry with a title matching the pattern `{{YOUR_DESIRED_GAME_NAME}}`
81+
82+
The application will connect to your Notion database, IGDB API and search for video game information.
83+
Video game details, including titles, franchises, genres, platforms, and release dates, will be updated in your Notion database.
84+
85+
## Any question ?
86+
The answer might be [there](https://www.reddit.com/r/Notion/comments/17dw8js/created_integration_to_automatically_fill_in/?utm_source=share&utm_medium=web2x&context=3)
87+
88+
## Contributing
89+
If you wish to contribute to this project, please follow these steps:
90+
91+
1. Fork this repository.
92+
2. Create a branch for your feature: git checkout -b feature/feature-name
93+
3. Commit your changes: git commit -m 'Added a new feature'
94+
4. Push your branch: git push origin feature/feature-name
95+
5. Submit a Pull Request.
96+
97+
## License
98+
This project is licensed under the MIT License. See the LICENSE file for details.
99+
100+
Feel free to open issues or submit feature requests if you have ideas to enhance this project.
10101

11-
## Setup
12-
1. Follow the [getting started](https://developers.notion.com/docs/create-a-notion-integration#create-your-integration-in-notion) to get your `NOTION_API_SECRET` & `NOTION_PAGE_ID`.
13-
2. Follow the [getting started](https://api-docs.igdb.com/#getting-started) IGDB API to get your `IGDB_CLIENT_ID` & `IGDB_SECRET`
14-
3. Put these in your `.env` file
15-
4. Complete `.env` following the `.env.example` file
16-
5. Run `docker-compose up` command
102+
## Contributors

0 commit comments

Comments
 (0)