diff --git a/gitly.v b/gitly.v
index 2fd831fa..9a20c6e0 100644
--- a/gitly.v
+++ b/gitly.v
@@ -155,6 +155,10 @@ pub fn (mut app App) init() {
 			app.logged_in = false
 			User{}
 		}
+		app.user.b_avatar = app.user.avatar == ''
+		if !app.user.b_avatar {
+			app.user.avatar = app.user.username[..1]
+		}
 	}
 	app.add_visit()
 }
@@ -277,6 +281,21 @@ pub fn (mut app App) repo_move(user string, repo string) vweb.Result {
 
 ['/:user/:repo']
 pub fn (mut app App) tree2(user string, repo string) vweb.Result {
+	match repo {
+		'repos' {
+			return app.user_repos(user)
+		}
+		'issues' {
+			return app.user_issues_0(user)
+		}
+		/*'prs' {
+			return app.user_pullrequests(user)
+		}*/
+		'settings' {
+			return app.user_settings(user)
+		}
+		else {}
+	}
 	if !app.exists_user_repo(user, repo) {
 		return app.not_found()
 	}
diff --git a/login.v b/login.v
index 050ecbe9..e17d5607 100644
--- a/login.v
+++ b/login.v
@@ -91,7 +91,7 @@ pub fn (mut app App) get_user_from_cookies() ?User {
 	}
 	user.b_avatar = user.avatar != ''
 	if !user.b_avatar {
-		user.avatar = user.username.bytes()[0].str()
+		user.avatar = user.username[..1]
 	}
 	return user
 }
diff --git a/usersite.v b/usersite.v
index 98f64be4..cda11928 100644
--- a/usersite.v
+++ b/usersite.v
@@ -10,7 +10,7 @@ fn (mut app App) check_username(user string) (bool, User) {
 	mut u := app.find_user_by_username(user) or { return false, User{} }
 	u.b_avatar = u.avatar != ''
 	if !u.b_avatar {
-		u.avatar = u.username.bytes()[0].str()
+		u.avatar = u.username[..1]
 	}
 	return u.is_registered, u
 }