You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
535 B
30 lines
535 B
// web server
|
|
import express from 'express'
|
|
import cors from 'cors'
|
|
|
|
// database
|
|
import DB from './db/DB.js'
|
|
import { Model } from 'objection'
|
|
|
|
// middleware
|
|
import ErrorMiddleware from './middleware/errors.js'
|
|
|
|
// database setup
|
|
Model.knex(DB)
|
|
|
|
// webserver setup
|
|
const app = express()
|
|
app.use(express.json())
|
|
app.use(cors())
|
|
|
|
// home route
|
|
app.get('/', (_, res) => res.send('ethermap'))
|
|
|
|
// routes
|
|
import apiRouter from './routes/api.js'
|
|
app.use('/api', apiRouter)
|
|
|
|
// error middleware
|
|
app.use(ErrorMiddleware)
|
|
|
|
export default app
|
|
|