Coder Social home page Coder Social logo

jurassicpark's Introduction

JurassicPark

Deno is a simple, modern and secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust.

This is a simple Rest API build with oak framework and Deno.

Learn more about Deno and oak

Server

import { Application } from "https://deno.land/x/oak/mod.ts";
import router from "./src/routes/routes.ts";

const port = 8000;
const app = new Application();

app.use(router.routes());
app.use(router.allowedMethods());

console.log(`Server running on port ${port}`);
await app.listen({ port });

Routes

import { Router } from "https://deno.land/x/oak/mod.ts";
import {
  getDinosaur,
  getDinosaurs,
  addDinosaur,
  updateDinosaur,
  deleteDinosaur,
} from "../controllers/dinosaurs.ts";

const router = new Router();

router.get("/api/v1/dinosaurs", getDinosaurs)
  .get("/api/v1/dinosaurs/:id", getDinosaur)
  .post("/api/v1/dinosaurs", addDinosaur)
  .put("/api/v1/dinosaurs/:id", updateDinosaur)
  .delete("/api/v1/dinosaurs/:id", deleteDinosaur);

export default router;

Types

export interface Dinosaur {
  id: string;
  name: string;
  era: string;
  area: string;
  diet: string;
}

Endpoints examples

  • /api/v1/dinosaurs
   {
    "success": true,
    "data": [
      {
        "id": "1",
        "name": "Achillobator",
        "era": "Late Cretaceous",
        "area": "Mongolia",
        "diet": "carnivorous"
      },
      {
        "id": "2",
        "name": "Agilisaurus",
        "era": "Late Jurassic",
        "area": "China",
        "diet": "herbivorous"
      },
      {
        "id": "3",
        "name": "Melanorosaurus",
        "era": "Late Triassic",
        "area": "South Africa",
        "diet": "omnivorous"
      }
    ]
  }
  • /api/v1/dinosaurs/1
  {
    "success": true,
    "data": [
      {
        "id": "1",
        "name": "Achillobator",
        "era": "Late Cretaceous",
        "area": "Mongolia",
        "diet": "carnivorous"
      }
    ]
  }

jurassicpark's People

Contributors

nickolasbenakis avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  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.