Giter Site home page Giter Site logo

brittanyrw / theaterlog Goto Github PK

View Code? Open in Web Editor NEW
12.0 1.0 8.0 2.68 MB

A personal theater show tracker listing every show I have seen since 2010, built with Contentful and Vue.js.

Home Page: https://theaterlog.com

HTML 5.24% JavaScript 2.09% Vue 92.55% SCSS 0.12%
contentful musicals vue

theaterlog's Introduction

TheaterLog

TheaterLog is a log of all of the musicals and plays I have seen since 2010.

View Live Project Here

TheaterLog Screenshots

Note:

This repo is no longer the source code for this Contentful blog post, to view the source code for that blog go to this Github repo.

Features

The tracker is built using Vue.js and Contentful. The site consists of Show Cards that are created for each show seen. In the top hero section, there are statistics (number of shows seen, number of musicals seen, etc) as well as a guide to the review emojis.

Show Cards

Each show generates a card that includes the following:

  • The show name
  • The theater and city of the show
  • The month and year
  • A label indicating if the show is a musical or a play
  • Opinion Stickers:
    • A star if a show is a favorite
    • An emoji representing my review of the show
    • A numbered card displaying the number of times I have seen that particular show
  • If a musical, my favorite song from the show (at the time of viewing) will be displayed.

Build your own tracker

If you'd like to create your own tracker, check out the steps below. You can track movies, TV shows, songs and much more if musicals are not your thing. Follow this setup guide to get your own project up and running and customize it to your needs.

The guide will walk you through the following:

  • Getting started with Contentful
  • Setting up the code
  • Importing the content model and example content into your own Contentful space
  • Suggestions for customization

Read this blog post to learn more about how I integrated Contentful into this project.

Step 1: Get the code

Fork this repository to your GitHub account, and clone your forked repo to your local machine using git or the GitHub CLI.


Step 2: Get Contentful

Create your Contentful account. Sign up here.


Step 3: Get credentials

  • Create a new space inside your Contentful account.
  • Go to Settings > General Settings and make a note of the Space ID.
  • Go to Settings > API keys and generate an access token for the Content Delivery API.
  • Create an .env file at the root of your project.
  • Copy the variables in .env.local.example into your .env file.
  • Add your Space ID and access token to .env.

Step 4: Install the Contentful CLI

Using homebrew:

brew install contentful-cli

Using npm:

npm install -g contentful-cli

Using yarn:

yarn global add contentful-cli

Step 5: Authenticate with the CLI

Run contentful login in your terminal and follow the instructions in your browser and in the terminal.


Step 6: Run the import

Import the content model and example entries to your Contentful space. This will import a content model for theater shows and sample entries. You can modify these entries to fit your own personal tracker after import.

Run the following command in your terminal, ensuring you switch out SPACE_ID for your new Space ID.

# navigate to the setup folder within your project
cd /path/to/repo/theatherlog/setup

contentful space import --space-id SPACE_ID --content-file contentful-export.json

Access the Contentful CLI docs on importing/exporting data here.

The terminal will do some fancy things. If all looks good - refresh Contentful in your browser and you'll find the content model and example entries have been imported for you! ๐ŸŽ‰๐ŸŽ‰๐ŸŽ‰


Step 7: Run the application

To run the project on your local machine, open a new termimal window, navigate to the project and run the following:

npm install
npm run serve

theaterlog's People

Contributors

brittanyrw avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 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.