-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Missing instructions on how to run mboxviewer #58
Comments
Hi, |
I strongly agree with @samtuke . I came to your project excited to try out your software, but have no idea how to run it. Instead, your Readme.markdown has a very long changelog that I had to scroll through to see if any instructions were below them. I recommend removing the changelog from the readme, and inserting instructions instead, and not assuming any knowledge of which framework or language you are using. For example, you said to double-left click on the executable, but did not say which file the executable is. And on further inspection of your project, I see that the HELP.txt file has some better information, and that the executable is an .exe file. (However, I did not find that file in the git cloned project.) I assume this means that your project only runs on Windows, right? Then please say so prominently. I came to your project page from an AI search for a Mac-compatible mail viewer, and the AI was not able to figure out that the project is Windows-specific. Thanks you for your time and expertise contribution to open source software, but if you have the time, please modify the readme to save future people like me from investing time in trying to figure it out for themselves. |
Thank you both for taking time to raise the issue. I fully agree with the feedback and will address the issue in the next release. I will rename README.txt to ReleaseNotes.md and update README.markdown. On the Sourceforge (clone of GitHub project) , it is somewhat more clear that MBox Viewer is Windows specific. Small note: And on further inspection of your project, I see that the HELP.txt file has some better information, and that the executable is an .exe file. (However, I did not find that file in the git cloned project.) The *.exe files are included in the release package only or when you clone the source code and build the project. Hopefully updated README will make this more clear. In the past, several users asked to port MBox Viewer to other platforms. I investigated the request but unfortunately non trivial effort is required. There is no current plans to port MBox Virewer to other platforms but I plan to revisit the issue in the future. |
Thank you for being so open to feedback. There are some conventions that might be helpful for you and your readers. One is that ".md" is the conventional extension for markdown files. Another is that the main readme file is named In your case you'd probably want a prominent section on building the software, and if it's very lengthy you could separate it out to another file, say 'BUILD_INSTRUCTIONS.md', and link to it in the README.md file. I've pasted instructions from Claude AI on linking to other markdown files at the end of this comment. user: What is the best naming and content convention for markdown files in a Github project? bard: Here's a breakdown of the best naming and content conventions for Markdown files in a GitHub project, combining proven practices and insights to optimize clarity and maintainability: Naming Conventions
Content Conventions
Additional Best Practices
Example Repository Structure
Important Considerations
Why Follow Best Practices Proper Markdown conventions in a GitHub project lead to the following benefits:
Let me know if you'd like to explore specific examples or adjust these conventions for a particular project type! user: In Github markdown language, how do I link to another file in the same directory? claude: In GitHub's Markdown language, you can link to another file in the same directory using relative file paths. The syntax for creating a link is as follows:
Here's an example of how to link to a file named
If the file you want to link to is located in a subdirectory, you need to specify the relative path from the current file's directory. For example, to link to a file named
You can also use relative paths to link to files in parent directories by using
Note that these relative paths work best for files within the same repository. If you want to link to a file in a different repository, you'll need to use the full URL instead of a relative path. |
Hi Keith, Thanks for great input. It will help to improve project structure and information presented to users. As I mentioned I will revisit porting MBox Viewer to multiple platform, Not sure yet about what GUI development platform would work best for me. Such effort would create opportunity to re-architect parts of the current code (needed -:)) and to create better or more standard project structure and information from start. Thanks, |
Sounds ambitious! I'd recommend separating the re-architecting of your base product and the changing of the UI library into separate tasks, probably doing the re-architecting first so that you a) have the benefit of it even if you can't get to the GUI task, and b) the better code organization from the first task simplifies the second one. I just researched cross platform GUI frameworks briefly, and for cross platform GUI applications in C++, QT seemed to be the best one, actually the only one ;) (see https://www.qt.io/download-open-source). Note their licensing requirements and make sure they are ok with you. If you're open to changing your programming language, then there are also the following:
There are also text mode (terminal) full screen user interface libraries, if that fits your needs better. |
I looked briefly Qt last year since it is c++ environment and I suppose widely used. Today I looked briefly the other platforms you listed. Electron and Flutter seem to be possible candidates for porting. The important dependency for me is solid support for Web Viewer. Automatic updates for WebView is strongly preferred for security reasons. Most of the platforms seems to have issue with this. MBox Viewer relies on Microsoft legacy Web Browser DLls. They are still updated in the background by Microsoft. At some point MBox Vier would need to migrate to leverage WebView2, Microsoft version of Chrome WebView. MBox Viewer has large dependency on Microsoft data structure such as CStrings, CArray, etc. You are correct that they would have to be replaced first with the standard C++ data structures whenever possible. Only recently I ported MBox Viewer to Unicode. MBox Viewer was created by Enea Mansutti in 2005. I took over the development in 2019 I believe. I plan to play first with Qt and GUI. Installed the latest 6.6 version and installed Qt VS Tools extension for VS 2022. I am quite sure non trivial effort is required to port to Qt. Licensing is another issue I need to investigate. It looks like Qt has tons of dependencies on various licenses. |
@zigm I wish you well with this task. It sounds pretty massive to me. |
The README doesn't seem to say actually how to run this app.
The text was updated successfully, but these errors were encountered: