![Hacking Dog](https://developers.inkdrop.app/images/heroimage.png "heroimage")

# Start building with the Inkdrop API

Source: https://developers.inkdrop.app/

The Inkdrop API empowers users to tailor and enhance the app's core functionalities. Whether customizing the editor, tweaking the Markdown renderer, or crafting unique themes and plugins, this API provides the tools you need.

## Getting started

Before diving deep into the API functionalities, it's essential to familiarize yourself with the basics. Here are two essential guides to get you started:

- **[The Init File](https://developers.inkdrop.app/guides/the-init-file)**: Understand how Inkdrop loads and how you can customize its behavior using JavaScript in the `init.js` file. Whether you wish to run custom scripts on startup or add new commands, this guide offers a foundation for using the API with JavaScript.
- **[Style Tweaks](https://developers.inkdrop.app/guides/style-tweaks)**: Delve into the aesthetic customizations of Inkdrop. Learn how to apply personal style changes and adjustments to the UI using the `styles.css` file, without the need to create an entire theme.

## Guides

- [Create a theme](https://developers.inkdrop.app/guides/create-a-theme): A tutorial on how to create a theme.
- [Create a plugin](https://developers.inkdrop.app/guides/plugin-word-count): A tutorial on how to create a plugin.
- [Access the local database](https://developers.inkdrop.app/guides/access-the-local-database): Learn how to access the local database from plugins and external programs.
- [Create a blog using Astro](https://developers.inkdrop.app/guides/create-a-blog-using-astro): A tutorial on how to create a blog using Astro.

## Resources

- [Notes](https://developers.inkdrop.app/data-access/notes): Learn about the note model and how to create, retrieve, update, delete, and list notes.
- [Notebooks](https://developers.inkdrop.app/data-access/books): Learn about the notebook model and how to organize your notes with notebooks.
- [Tags](https://developers.inkdrop.app/data-access/tags): Learn about the tag model and how to categorize your notes with tags.
- [Files](https://developers.inkdrop.app/data-access/files): Files in Inkdrop are primarily used as image attachments that can be inserted into notes.
- [Utilities](https://developers.inkdrop.app/data-access/utils): Provides convenient methods for managing documents in the local database.
- [Local HTTP server](https://developers.inkdrop.app/data-access/local-http-server): The Inkdrop client app can open a simple HTTP server so that you can access the data from an external program easily.
