A mobile-first web application for conducting annual equipment stock takes with minimal typing and fast interaction.
- Mobile-first design optimized for phones and tablets
- Fast interaction with tap and count, minimal keyboard input
- CSV export to generate reports by department
- Shared login with single set of credentials for team
- Local storage so data persists in browser
- Department management organized by super and sub-departments
- Optional serial number tracking for items
- Session completion to lock sessions when done
- Clone this repository
- Open
Stock Taking App/index.htmlin a web browser - Login with demo credentials:
- Username:
staff - Password:
stocktake
- Username:
- Go to repository Settings > Pages
- Under "Source", select
mainbranch and/Stock Taking Appfolder - Click Save
- Your app will be live at
https://yourusername.github.io/stock-take-app
- Create a
vercel.jsonin the root:{ "public": "Stock Taking App" } - From the repo root:
vercel - Your app will be live instantly with a public URL
- Drag the
Stock Taking Appfolder to Netlify Drop - Or connect your GitHub repo and set the publish directory to
Stock Taking App
- Select Department - Choose Tech Cornwall or Agile on the Beach
- Add Sub Department - Create or select a sub department
- Create Session - Start a new session with an optional note
- Count Items - Tap items to open the detail view
- Update Quantity - Use +/- buttons to count
- Set Condition - Mark items as New, Good, Fair, Damaged, or Other
- Add Serial Numbers - If tracking serial items
- Confirm - Press "Confirm update" to save changes
- Complete Session - Lock session when done
- Export CSV - Generate separate files for serial and standard items
- Username:
staff - Password:
stocktake
These can be changed in the app's Configuration panel.
All data is stored locally in your browser using localStorage.
- Data persists between sessions
- Works offline
- Not synced across devices
- Clearing browser data will delete everything
Regularly export sessions to CSV to preserve records.
- Language: Vanilla JavaScript (no build tools needed)
- Styling: Plain CSS with CSS variables
- Storage: Browser localStorage
- No external dependencies
Stock Taking App/
├── index.html Main HTML entry point
├── styles.css All styling
├── app-epics3-11.js Complete application logic
└── app-epics1-2.js Previous version (reference)
- Chrome/Edge 90+
- Firefox 88+
- Safari 14+
- Mobile browsers (iOS Safari, Chrome Mobile)
Edit DEFAULT_CREDENTIALS in app-epics3-11.js:
const DEFAULT_CREDENTIALS = {
username: 'staff',
password: 'stocktake'
};Edit SUPER_DEPARTMENTS in app-epics3-11.js:
const SUPER_DEPARTMENTS = ['Tech Cornwall', 'Agile on the Beach'];Edit DEFAULT_CATALOGUE in app-epics3-11.js to change the default items:
const DEFAULT_CATALOGUE = [
{ id: 'cat-laptop', name: 'Laptop', category: 'Computing', serialTracked: true },
// ... more items
];- Check browser console (F12) for errors
- Clear browser cache and reload
- Try a different browser
- Browser storage was cleared
- Try a different browser profile
- Check if you're in private/incognito mode
- Check browser permissions for downloads
- Ensure pop-ups aren't blocked
- Try a different browser
For issues or feature requests, open an issue on GitHub or contact the development team.
Internal use only.