Mother dough is another name for a [REST API] starter. This can be used to make just about any type of [REST API], or to flavor other types of [Web Apps]. It is most well known for making artisan [REST APIs]. -- Loren McCune, paraphrased
Motherdough is an artisanal PHP 8.1+ REST API starter kit built on Slim 4 and Vue 3.
This repo is monolithic by design, but is built in a way that you could split it into separate client and REST microservices if you so desired.
This is a personal project starter for myself. If you also like it, great! If you feel there is a missing core feature or something fundamentally broken with it, feel free to post an issue or issue a PR about it.
However, just because an issue or PR is submitted doesn't mean I will implement/accept it as I have my own goals for this framework, and you are more than welcome to fork this as you see fit.
You will need the following:
git
php 8.1+
node.js/npm
docker-compose
docker-compose up -b
From here you should be able to open http://localhost:3005
in your browser and view your webapp.
Start making changes and refresh to see things in action.
Run the following commands in your terminal to setup the local environment:
# Clone the github repo
git clone https://github.com/bmcminn/motherdough ./your-project-name-here
# Copy the sample .env config and fill it out as needed
cp ./.env.sample ./.env
# Install local dependencies; this will install composer
# and /client dependencies as well
npm i
SO many things... lots of things to reference in the original repo: https://github.com/bmcminn/starter-api
In no particular order:
vite --watch
; expose port :5173
to allow for HMRinvalidate-passwords.txt
to tableuser_confirmation
tableuser_profile
tableuser_remembered
table?user_reset
table -- list of password resets stored by auth tokenuser_session
table -- list of sessions with user_id, expires_atuser_throttled
tabledocs/
directory with references to internal utilitiesdocs/cookbook/
resource for more specialized workflows