CatSScript is a cat-themed web application for learning and practicing front-end web programming. Users read short lessons on HTML, CSS, and JavaScript, then test what they have learned in an interactive, timed quiz game, all wrapped in a playful Pusheen-style kitten interface.
- Landing page (
index.php) introducing the platform, with a navbar that adapts to whether the visitor is logged in. - User accounts — registration, login, profile, and logout, implemented with PHP
sessions and a PostgreSQL
userstable (registrazione/,login/,profile/). - Learn section (
learn/) — lesson pages for HTML, CSS, and JavaScript. Each topic has its own set of content pages (e.g. HTML forms, tables, and links; CSS selectors and properties; JavaScript syntax, functions, arrays, objects, and events). - Play section (
play/) — a quiz game per topic. Each game serves a bank of questions, tracks the score, and adds atmosphere with lobby music, suspense cues, and podium placement sounds.
- PHP for server-side logic: session management and PostgreSQL access via the
pg_*API. Auth pages query and insert into auserstable (username, email, password). - PostgreSQL as the backing database.
- HTML, CSS, JavaScript for the front end, built on Bootstrap 5, with jQuery
and Font Awesome. Navbars are loaded dynamically (
insession_navbar.html/outsession_navbar.html) based on session state. - SVG and PNG kitten artwork under
assets/img/.
The application lives under CatSScript/:
CatSScript/
index.php landing page
login/ registrazione/ authentication (PHP + PostgreSQL)
profile/ user profile
learn/ HTML, CSS, JavaScript lessons
play/ quiz games (with audio) per topic
assets/ Bootstrap, CSS, JS, images
The varianti server/ folder holds two configurations of the sign-in and sign-up
scripts — one for a local database (server locale) and one for the deployed database
(server ufficiale) — differing only in their PostgreSQL connection settings.
- Serve the
CatSScript/directory with a PHP-capable web server (XAMPP, MAMP, orphp -S). - Run a PostgreSQL instance with a
CatSScriptdatabase containing auserstable (username,email,password). Update the connection parameters in thesignin-form.php/signup-form.phpscripts to match your setup. - Open
index.phpin a browser.
MIT. See LICENSE.