Skip to content

A tool to download Notion databases into a Unity scriptable object for use in Unity projects. Handy for game data such as items, localization, skills and more!

License

MIT, Unknown licenses found

Licenses found

MIT
LICENSE
Unknown
LICENSE.meta
Notifications You must be signed in to change notification settings

CarterGames/NotionToUnity

Repository files navigation

Notion Database to Unity Scriptable Object

A flexible system to import Notion databases into a Unity scriptable object for use in Unity game projects. Note: This is experimental. While functional, there may be issues or edge cases that are not covered. Updates will also be slow/infrequent.


Unity Notion API GitHub all releases GitHub release (latest by date) GitHub repo size Static Badge


Authors


Documentation

Full documentation can be found here: https://carter.games/docs/notiondata/documentation.pdf



Table of contents



Features

  • Download databases of any size.
  • Apply sorting and filters to data to order it just as it is in a Notion database view.
  • Automatic parsing of data into their field types.
  • Support for most useful Notion data properties.
  • Automatic API key removal on build creation for security.
  • System to reference assets in code without a direct inspector reference.



Planned Features

  • None at the moment other than general support where needed.



Supported Properties

Any string convertible type should also support JSON for custom classes, but the mileage may vary. Best to just store raw data in these assets and convert the data with an override to the PostDataDownloaded() method in the Notion Data Asset.

Note that rollups are supported only when they show a property that is otherwise supported below:

Property type Conversion types supported (Unity)
Title string
Text string NotionDataWrapper(GameObject(Prefab)/Sprite/AudioClip), List/Array of string, int, float, double, bool
Number int float double etc
Toggle bool
Single-Select string enum
Multi-Select string[] List<string> enum flags
Rollup Any supported in this table.
Date SerializableDateTime



Installation

Unity Package Manager (Git URL) [Recommended]

Release:
The most up-to-date version of the repo that is considered stable enough for public use.

https://github.com/CarterGames/NotionToUnity.git

Pre-release:
Used to prepare future releases before releasing them, checking for bugs mainly. Will have the latest features but may not be stable just yet. Use at your own risk.

https://github.com/CarterGames/NotionToUnity.git#pre-release

Unity Package (.unitypackage)

Import the package found in the releases section through the "Import custom package" right-click menu option in Unity's project tab.


Manual (Clone)

Download the repo/clone it and import the files into your project manually.



Please refer to documentation for details on setup in your project & usage.

About

A tool to download Notion databases into a Unity scriptable object for use in Unity projects. Handy for game data such as items, localization, skills and more!

Topics

Resources

License

MIT, Unknown licenses found

Licenses found

MIT
LICENSE
Unknown
LICENSE.meta

Stars

Watchers

Forks

Sponsor this project

Languages