# frozen_string_literal: true require 'sinatra/base' require 'sinatra/json' require 'sequel' require 'sqlite3' # Load the Sequel timestamps plugin Sequel::Model.plugin(:timestamps) # Initialize Sequel gem for database actions DB = Sequel.connect(adapter: $conf.get('database.adapter'), database: $conf.get('database.database')) # Base app class GameData < Sinatra::Base enable :sessions # Set up static file serving enable :static set :public_folder, File.join(__dir__, '/../public') # Register view helpers require_relative 'helpers' helpers Helpers # Set up our view engine set :views, File.join(settings.root, '/../views') end # Load routes require_relative 'routes/init' # Load models require_relative 'models/init'