Nopeus
Nopeus is a simple framework for building full stack web apps using NodeJS, React and GraphQL.
:warning: Nopeus is still highly experimental and not ready to be used in production |
---|
Nopeus (finnish) noun
Pronunciation: no‧pe‧us | ˈno̞pe̞us̠
Meaning: velocity, speed, swiftness, quickness, rapidity
Getting started
Intallation
npm i nopeus
Usage
- Create a
nopeus.config.ts
file in the root of your project
import { defineConfig } from 'nopeus'
import path from 'path'
import makeSchema from 'nexus'
import * as types from './types'
const schema = makeSchema({ types })
export default defineConfig({
schema,
assetsPath: path.resolve(__dirname, './static'),
indexPath: path.resolve(__dirname, './index.html')
})
- Update the scripts section of your
package.json
"scripts": {
"start": "nopeus start",
}
Local development (with vite)
For local development you can also use the included vitePlugin (if you are using vite).
import { defineConfig } from 'vite'
import { nopeusVitePlugin } from 'nopeus'
export default defineConfig({
plugins: [nopeusVitePlugin()]
})
Deploy as serverless function (to Vercel)
import makeSchema from 'nexus'
import { createServer } from 'nopeus'
import * as types from './types'
const schema = makeSchema({ types })
export default createServer({ schema, serveStatic: false })
Deploy to production (as NodeJS app)
import { startServer } from 'nopeus/utils'
startServer()
API
TODO...