# Introduction

Welcome and thank you for considering to contribute to Optolith! This section gives you an overview of how you can help out working on the database and what you need to do it.

First, it's important to know that you won't need *any* programming knowledge for this. You also don't need any specific database knowledge, since Optolith uses a custom flat-file database. And if you’re afraid of doing any damage: You can’†! Git makes it easy to travel back in time and the most important areas are protected so you couldn’t do anything even if you tried! So don’t worry about making any mistake!

You *do* need some tools to be able to contribute:

- A **GitHub account**, since the database is stored on GitHub and also project management is done there
- **Git**, which is a version control management software
- **Node.js**, which is a software for running JavaScript, but we only need to get the package manager from its ecosystem
- A **plain text editor**, Visual Studio Code is recommended

For more details about all those prerequisites, check out the [Prerequisites page](./Prerequisites.md). *Note that often there will be multiple ways or tools to achieve the same thing. If you’re familiar with the topic, feel free to use the tools or ways you prefer; the guides you’ll find here will describe a single way to keep it simple.*

Although you won't need any programming knowledge, you'll need to use a terminal in specific situations. There are only specific commands you need to execute and following tutorial will explain all of them.

What else do you need? Well, time. Entering data can be quite time-consuming, even for people familiar with it. It also helps if you have a good understanding of *The Dark Eye* rules. It will make the database more self-explanatory and thus easier to work with.

The database is closed source due to licensing reason. If you want to contribute, please contact @elyukai, he will get you access to everything you need. To start learning how to contribute to the database, start with the [Project Management](./Project-Management.md) and [Git Workflow](./Git-Workflow.md) guides and continue with either [Insertion Workflow](./Insertion-Workflow.md) or [Translation Workflow](./Translation-Workflow.md) – depending on if you insert completely new data or only translations of existing data.

Checkout [Project Management](./Project-Management.md) to get an overview of the available resources for project management in Optolith. You’ll find details in the respective workflow guides.

If you have any questions, feel free to reach out on GitHub Discussions or [Discord](https://discord.gg/wfdgB9g)!

## Continue Reading

-  [Prerequisites](./Prerequisites.md)
