Search

A couple of months ago I was getting frustrated with not being able to properly keep track of the software I was developing. So I started searching for a webbased bugtracker, written in PHP. Although I've found a couple of them, they all seemed to be coming from the dark ages of the internet: Crappy usability, bloated featurebase, ugly looks...

Because I didn't have a choice really, I went with Mantis. But after installing and two days of light usage, the UI was so cluttered that every visit confused me more and more. And how should I be able to ask my clients to use the tracker if I didn't really get it myself? I wanted a task-manager not another managing-task!

Now, a few months later, I've found a few new ones: Sifter, Lighthouse, 16bugs, FogBugz, they're all beautifully designed, not overly complicated and... expensive hosted solutions. Being a webdeveloper, I tend to want to host my apps myself. :-)

Introducing Bugaroo

So I began writing my own bugtracker: Bugaroo (nope, I am not too sure about that name either). I took away inspiration from some of the applications I had to work with so far and minimized to all the features that I've actually found useful. Away with all the stuff the client probably wouldn't understand anyways.

Bugaroo Dashboard

Pricing starts at $20/month for small companies of up to ten employees with a maximum of 5 open projects... Just kidding, I'll upload it to GitHub.

The thing is though: I'm quite busy at the time but I've also heard a couple of people having interest in a customer ticketing/issue tracking system. So I am asking you guys to help me a little bit.

Bugaroo Project

Progress

Features so far: You can define your own Projects, Milestones, Issues, Statuses (including their color), Categories and Assignees. Users can mark projects as important (and see their details on the dashboard) or hide them altogether. Filtering is done via a heap of collapsible checkbox-like links in the project view.

The activity (measured in comments per day) is being displayed as a sparkline for each person, project, milestone and issue.

So far the Section layout is complete, the XSLT templates are nearly done and there is a preliminary CSS stylesheet.

What's mainly missing are all the events such as login-logic, access privileges management, adding issues, adding comments and sending emails.

Sounds easy? Then you're the man for the job! Got something else to contribute? Welcome aboard!

Bugaroo Issue

Since I am not too sure what I have to do to publish an ensemble on github I've attached an export with this post. If you can't get that one to run either you can have a look on my local machine too. Just remember that it won't be online all the time and that besides browsing and filtering, nothing really works yet. :-)

Edit: Attachment functionality seems to be broken.

Win!

Looks really really impressive!

Will give it a try soon :)

This looks great, phoque! You had me going for a second. lol:

Pricing starts at $20/month for small companies of up to ten employees with a maximum of 5 open projects… Just kidding, I’ll upload it to GitHub.

Unfortunately, the repository for the ensemble on GitHub is missing several files that are necessary to be able to install the ensemble. The ensemble should include extensions (at the very least as submodules), the symphony core files and the workspace/install.sql file. I wonder if you could upload the complete ensemble to the GitHub downloads page: http://github.com/phoque/Bugaroo/downloads. I can fork your repo and see if I can get the ensemble fixed up so that it installs properly.

Great effort! It seems indeed that there is no perfect bugtracker out there, as some people report. Jira seems to be a top contender, but its java… might serve as future inspiration for your project.
Personally I am wondering if I can’t simply use cultured code things GTD app as a 1 person 1 project bugtracker. Woud have loved to hear about people doing that/their workflow.

Very nice job. Excited about this.

Great job phoque!

Unfortunately, the repository for the ensemble on GitHub is missing several files that are necessary to be able to install the ensemble. The ensemble should include extensions (at the very least as submodules), the symphony core files and the workspace/install.sql file.

Don’t really know what went wrong there. I added them as submodules but they dont seem to be different from any other source file in the repo.

Just to make sure I’ve uploaded an ensemble export to Github too. Thanks for your help!

Ah. That’s better! Just starting to poke around now. At first glance, the data appears to be showing up fine in the Symphony admin, but the home page is showing very little information. I’ll look around and let you know what I find.

BTW, the ZIP file on GitHub is kinda weird. It extracts with a long list of files in a single directory, with file names like this (these are the actual file names, which include the back slashes):

  • extensionsasdcextension.driver.php
  • extensionsasdclibclass.asdc.php
  • extensionsasdcLICENCE
  • extensionsasdcREADME

I suspect there are issues related to missing events. The events directory is missing from the workspace.

Git won’t track directories when they’re empty. I’ve added the event.login.php wich comes with Symphony by default.

Also, the repo now contains workspace/install.sql.

Oh. I didn’t realize you didn’t have any events. I assumed there would be some for front end forms like the /issue/new/ page.

I’m finding that the issues are actually related to data sources that haven’t been attached to the pages. It appears the workspace/install.sql file may not contain all the data related to data sources in the sym_pages table.

Oh. I didn’t realize you didn’t have any events. I assumed there would be some for front end forms like the /issue/new/ page.

Not yet, that’s where I got stuck. :-)

I’m finding that the issues are actually related to data sources that haven’t been attached to the pages. It appears the workspace/install.sql file may not contain all the data related to data sources in the sym_pages table.

Maybe you’ll have to manually select all Index...-Datasources using the global resource loader.

Maybe you’ll have to manually select all Index…-Datasources using the global resource loader.

Ah. Yes, that’s a short-coming of the ensemble export process. Extension configurations are not included in the export. Thanks.

That did the trick. For anyone else who wants to manually edit the config.php file instead, this was missing from the bottom of the file:

    ###### GLOBALRESOURCELOADER ######
    'globalresourceloader' => array(
        'ds-names' => 'index_assignee,index_category,index_issues,index_milestone,index_priority,index_projects,index_status',
        'ds-pages' => '86,78,82,87,83,84,85,88,89,90,91',
    ),
    ########

You’ve made a very good start with this, phoque. I’d be happy to do what I can to add my efforts to this project.

Not yet, that’s where I got stuck.

What specifically did you get stuck on? Was it to do with uploading attachments through a front end form? Or just front end forms in general?

What specifically did you get stuck on? Was it to do with uploading attachments through a front end form? Or just front end forms in general?

All of it, actually. Adding users (sending email), login, updating account, posting issues, posting comments (saving the message, updating the issue and sending emails to subscribers), marking projects as starred etc. :-)

First, I’ve cleaned up a few things so that the ensemble should install without a hitch. I’ve sent a pull request for the changes I’ve made in the dev branch of my fork.

Next, I can take a look at login and creating events to enable the forms you already have for issues and comments. Did you have a layout in mind for the login screen? Also, would you prefer that discussions around further development of this ensemble occur here or through GitHub?

I’ve sent a pull request for the changes I’ve made in the dev branch of my fork.

GitHub seems to be broken as I can’t apply them (the queue simply hangs). I’ve manually commited your changes to my repo so I guess you’ll have to pull them back in. Thanks!

Did you have a layout in mind for the login screen?

Yes, there is one in workspace/utilities/login-form.xsl.
Once the login info events are working one can activate it globally by un-commenting the contents of workspace/utilities/include-master.xsl.

Also, would you prefer that discussions around further development of this ensemble occur here or through GitHub?

I am not sure. I guess somewhere else would be better as we can create different threads there. Feature suggestions, ideas and conceptual discussion can still go here though.

Perhaps the ensemble could be added to the Downloads area, so contributers can use the issue tracker for discussions around developing the ensemble.

Yes, sounds good. Done.

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details