I'm James/Jim, a Full Stack software developer from the south of Wales. I enjoy all sorts of programming but professionally experienced with Full stack and a bit of dev-ops.
I spend a big chunk of my time learning, whether it's about rockets, science or languages.
日本語を勉強しています! Dw i'n dysgu Cymraeg!
I see software developers as generalists, we have real power to solve problems in our day to day lives. For example, a silly movie app so I can group watch home movies with my partner in Japan, or creating a networked OS based toast announcer to remind myself to make tea!
Name | Description | Demo? |
---|---|---|
React-experiment-video-player | React, express, node, websocket project for allowing of group watching of home content Currently refactoring for a guide | - |
Kanji-sentence-grabber | NodeJS/express API for finding Japanese sentences | - |
ts-react-socket-docker | NodeJS and React websocket based chat app | Click me! |
Name | Description | Demo? |
---|---|---|
Responsive Interaction in Virtual Reality | C++/OpenGL/Arduino, game engine with haptic feedback glove | - |
TkyoSpaghetti - side scroller game | C++/SDL2 - Built for web using Emscripten/WASM | Click me! |
Tridents of ardeus - Tile map example game | C++/SDL2/Emscripten test bed for composition over inheritence | Click me! |
Name | Description | Demo |
---|---|---|
TkyoSpaghetti - side scroller game | C++/SDL2 - Built for web using Emscripten/WASM | Click me! |
ts-express-tdd-docker-nginx-template | Nginx/docker-compose wrapped NodeJS/React app | Click me! |
sdl-rpg-battle-system | C++/SDL2 - Built with emscripten | Click me! |
code-challenge-tiles | A CSS code challenge using React | Click me! |
ts-react-socket-docker | NodeJS and React websocket based chat app | Click me! |
I probably take DRY/YAGNI a bit too seriously, so I tend to make templates for every bit of new tech I work on. Feel free to use any of these templates however you see fit:
Name | Description | Demo? |
---|---|---|
sdl2-emscripten-project-template | C++/SDL2/Emscripten project with a window and a bouncing ball | Click me! |
ts-express-tdd-template | NodeJS/Express/SuperTest Back-end project using REST | - |
ts-express-mongodb-template | NodeJS/Express/SuperTest/MongoDB CRUD example with Jenkins for CI/CD | - |
ts-express-tdd-docker-nginx-template | Nginx/docker-compose wrapped NodeJS/React app | Click me! |
ts-react-grid-template | React/Typescript/React-grid-layout | - |
These projects are purely for reference they are more for my benefit but I hope you find them useful too!
I find it useful to build up something from the very basics in a project before working on them in another (I have a terrible memory!)
Name | Description |
---|---|
java-compilation-reference | Java compilation examples (using the cli & ANT ) |
cpp-compilation-reference | C++ compilation examples (CLI/Make/Cmake/Wasm) |
Name | Description | Technologies used |
---|---|---|
cronjob-toast-requester | Creates OS level notifications, can be push based or cron based | Node, Typescript, Express, SuperTest, Mocha, Chai |
angular-typescript-blog | A simple CRUD/BLOG single page app defunct project | AngularJS (~1.2), Typescript (pre @types) Mongodb, Node |
native-java-backend | A REST API using the native Java http package | Java, Ant (for compiling) |
native-java-api-requester | A REST client using native Java packages | Java, Ant (for compiling) |
code-challenge-rewards | REST API for redeeming rewards for a code challenge, showing TDD | Node, Express, Supertest, Typescript |