Coder Social home page Coder Social logo

todoapp's Introduction

JAMStack + Netlify + Astra DB + Cassandra ๐Ÿ“’

10 minutes, Beginner, Start Building

This is an example React To-Do application using a DataStax Astra free tier database.

image

Objectives

  • Provide a fullstack development example using Astra DB as the storage backend

How this works

Once the Astra DB credentials are provided, the necessary tables are created in the database. The webservice will be available on port 8080 once the application has been deployed.

JAMstack is a big leap forward in how we can write web applications that are easy to write, deploy, scale, and also maintain. Using this approach means that newly created content is rendered from a content API, while a static render of it is being built into the site for future.

Get Started

To build and play with this app, follow the build instructions that are located here: https://github.com/DataStax-Examples/todo-astra-jamstack-netlify

Running JAMStack + Netlify + Astra DB + Cassandra

Follow the instructions below to get started.

Prerequisites

Let's do some initial setup by creating a serverless(!) database.

DataStax Astra

  1. Create a DataStax Astra account if you don't already have one: image

  2. On the home page. Locate the button Create Database image

  3. Locate the Get Started button to continue image

  4. Define a database name, keyspace name and select a database region, then click create database. image

  5. Your Astra DB will be ready when the status will change from Pending to Active ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ image

  6. After your database is provisioned, we need to generate an Application Token for our App. Go to the Settings tab in the database home screen. image

  7. Select Admin User for the role for this Sample App and then generate the token. Download the CSV so that we can use the credentials we need later. image

  8. After you have your Application Token, head to the database connect screen and copy the connection information that we'll need later. We'll replace ASTRA_DB_APPLICATION_TOKEN with the Token value that is part of your Application Token. image

Github

  1. Click Use this template at the top of the GitHub Repository: image

  2. Enter a repository name and click 'Create repository from template': image

  3. Clone the repository: image

๐Ÿš€ Getting Started Paths:

Make sure you've completed the prerequisites before starting this step

Running on your local machine

  1. cd to the cloned repository, and install Node dependencies: npm install.

  2. Populate your environment variables into a .env file

cp .env-template .env

and modify .env to include your database specific values (you can find these in the database detail screen in the Astra UI).

ASTRA_DB_ID=REPLACE-ME
ASTRA_DB_REGION=REPLACE-ME
ASTRA_DB_KEYSPACE=REPLACE-ME
ASTRA_DB_APPLICATION_TOKEN=REPLACE-ME
  1. In the cloned repository, build the app: npm run dev.

  2. Open http://localhost:8080 to view your application: image

Running on Gitpod

  1. Click the 'Open in Gitpod' link: Open in IDE

  2. Wait for your Gitpod workspace to start: image

  3. Set your Astra DB details in the Gitpod terminal at the bottom of the screen: image

  4. Click the 'Open browser' button in the bottom right of the screen: image

  5. View your application:

  6. image

Deploying to Netlify

  1. Click the 'Deploy to Netlify' button: Deploy to Netlify

  2. Connect your GitHub account: image

  3. Fill in the Netlify environment variables with information on your Astra DB: image

  4. Click 'Save and Deploy': image

  5. Wait for your app to deploy (this will take a minute or two, the screen will auto-refresh when the deployment is complete): image

  6. Click your Netlify app link to view your live app: image

  7. You've deployed your app to Netlify! image

Things to Note:

todoapp's People

Contributors

developer22-university 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.