The following document should be made for every project (this is my personal opinion):
- DLD (Detailed level design): Class/file design spec for every file/function/class in their respective layer
- HLD (High-level design): System architecture must be explained properly.
- Database Design document: Table files or entities and volatility of every table must be mentioned.
- Bug tracker.