|
|
- import 'https://deno.land/x/dotenv@v2.0.0/load.ts'
- import {
- opine,
- serveStatic,
- json,
- urlencoded
- } from 'https://deno.land/x/opine@1.5.3/mod.ts'
- import { dirname, join, createError } from "https://deno.land/x/opine@1.5.3/deps.ts";
- import { renderFile } from 'https://deno.land/x/eta@v1.12.2/mod.ts'
-
- // middleware
- import session from './src/middleware/session.ts'
-
- // getting routes
- import home from './src/http/home.ts'
- import buckets from './src/http/buckets.ts'
-
- //import settings from './src/http/settings.ts'
- import users from './src/http/users.ts'
- import usersApi from './src/http/api/users.ts'
-
- //import bucketApi from './src/http/api/bucket.ts'
- //import noteApi from './src/http/api/note.ts'
-
- const app = opine()
- const __dirname = dirname(import.meta.url)
-
- // for parsing application/json
- app.use(json())
-
- // for parsing application/x-www-form-urlencoded
- app.use(urlencoded())
-
- // adding static files
- app.use(serveStatic(join(__dirname, 'public')))
-
- // adding eta as view engine
- app.engine('.html', renderFile)
- app.set('views', join(__dirname, 'resources/views'))
- app.set('view engine', 'html')
-
- // adding http classes for routes
- app.use('*', session)
-
- app.use('/', home)
- app.use('/buckets', buckets)
- app.use('/users', users)
-
- // routes: api
- app.use('/api/users/v1', usersApi)
-
- //app.use('/api/bucket', bucketApi)
- //app.use('/api/note', noteApi)
-
- app.use((request, response, next) => {
- response.setStatus(404)
- response.render('errors/404')
- })
-
- // let it rain
- app.listen(Number(Deno.env.get('SERVER_PORT')))
- console.log('running on ' + Deno.env.get('SERVER_PORT'))
|