Git Product home page Git Product logo

tinacms's Introduction

TINA CMS   Tweet

Build Status Slack Lerna All Contributors

Getting Started

Tina Demo

Development

To get started:

git clone [email protected]:tinacms/tinacms.git
cd tinacms
npm install && npm run bootstrap
npm run build

# Start Gatsby demo
cd packages/demo-gatsby
npm run start

Do not run npm install from inside the packages directory

TinaCMS uses Lerna to manage dependencies when developing locally. This allows the various packages to reference each other via symlinks. Running npm install from within a package replaces the symlinks with references to the packages in the npm registry.

Commands

Commands Description
npm run bootstrap Install dependencies and link local packages.
npm run build Build all packages.
npm run watch Watch all packages for rebuilds.
npm run test Run tests for all packages.
lerna run build --scope <package> Build only <package>.

Testing With External Projects

Linking apps to a monorepo can be tricky. Tools like npm link are buggy and introduce inconsistencies with module resolution. If multiple modules rely on the same package you can easily end up with multiple instances of that package, this is problematic for packages like react which expect only one instance.

@tinacms/webpack-helpers provides tools and instructions for testing local TinaCMS changes on external websites.

Release Process

Tina has two main branches:

  • master: The bleeding edge of tinacms
  • latest: The current stable release

The flow of changes therefore looks like:

fix-some-bug => master => latest

This is a weekly process:

  • On Monday master is merged into latest which is then published to npm.
  • Hot fixes are cherry picked onto latest and then published.
  • Prereleases are created off of master whenever they're needed.

With this process:

  • critical fixes are published as soon as possible
  • new features and minor fixes take 3-5 days to be published

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Forestry.io

💵

NCPhillips

📆 💻 📝 🐛 📖 🤔 🚇 🚧 👀 ⚠️

DJ

📆 💻 📝 🐛 📖 🤔 🚧 👀 ⚠️

Scott Byrne

🎨 💻 👀 🚧 📖 📝

James O'Halloran

📆 🐛 🤔 🚧 👀 ⚠️ 💻 📝

Kendall Strautman

🎨 📆 🐛 🤔 🚧 📢 👀 💻 📝

Nichlas Wærnes Andersen

💻 🎨 🤔

Jordan

📆 📢 🤔 🐛 🚇 📖 💻

Frank Taillandier

👀 📖 📆 📓 🐛 💻

Scott Gallant

📖 📢 🔍 📝

Mitch MacKenzie

📓 📝

zacchg

📓

Lyle Underwood

🐛 💻

Laura1111999

📖

Thom Krupa

📓

Michael Gauthier

📓 📖

dcgoodwin2112

📖

akshayknz

📖

Adam Silverstein

📖

Brad McGonigle

💻

Jake Coxon

💻

Ladislav Prskavec

💻

Bolarinwa Balogun

🚇

Mason Medeiros

📓

ironsean

📓

kyp

🐛

Vladislav Shkodin

🐛

maciek_grzybek

🤔 💻 🚇

weibenfalk

📹 📝 💻

David Bergeron

🐛

Kellan Martin

💻

Jon Miller

🤔

Paul

🐛

Chris Flannery

💻 📖

Jefferson Bledsoe

⚠️

Kenia

💻

Andrew James

💻

Zach B

📢

Jyoti Puri

💻

nibtime

💻 🐛

Johan Soulet

💻 🐛

Cleiton Pereira

🐛

chrisdmacrae

🚇 💬 🤔

jhuggett

💻

Nicolas Cisco

💻 ⚠️

Hungry Bear Studio

💻

Alex Barbato

💻

Dani Tulp

💻

PaulBunker

💻

JavaScript Joe

💻

Madelyn Eriksen

📝

Marc Mintel

🚇 💻 🐛

Jeff See

🚇

Brandon Landfried

🐛

Chad Johnson

🐛

This project follows the all-contributors specification. Contributions of any kind welcome!

tinacms's People

Contributors

abtris avatar alexbarbato avatar allcontributors[bot] avatar bolariin avatar bradmcgonigle avatar chrisdmacrae avatar chriswillsflannery avatar danitulp avatar dependabot[bot] avatar dirtyf avatar dwalkr avatar jakecoxon avatar jamespohalloran avatar jeffsee55 avatar jontallboy avatar jpatters avatar jpuri avatar jsjoeio avatar kendallstrautman avatar laura1111999 avatar lyleunderwood avatar maciekgrzybek avatar mitchmac avatar mmintel avatar ncphillips avatar paulbunker avatar spraynard avatar teyc avatar weibenfalk avatar z95 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.