diff --git a/app/src/main/java/com/futo/circles/di/DataSourceModule.kt b/app/src/main/java/com/futo/circles/di/DataSourceModule.kt
index c2bf193dad5de6aac81bb6632a037ff13d2a0e81..6db5e2f7d1695555c2a459ab4d289ce6a054439c 100644
--- a/app/src/main/java/com/futo/circles/di/DataSourceModule.kt
+++ b/app/src/main/java/com/futo/circles/di/DataSourceModule.kt
@@ -1,8 +1,8 @@
 package com.futo.circles.di
 
-import com.futo.circles.feature.groups.timeline.data_source.GroupTimelineBuilder
-import com.futo.circles.feature.groups.timeline.data_source.GroupTimelineDatasource
-import com.futo.circles.feature.groups.timeline.invite.data_source.InviteMembersDataSource
+import com.futo.circles.feature.group_timeline.data_source.GroupTimelineBuilder
+import com.futo.circles.feature.group_timeline.data_source.GroupTimelineDatasource
+import com.futo.circles.feature.group_invite.data_source.InviteMembersDataSource
 import com.futo.circles.feature.log_in.data_source.LoginDataSource
 import org.koin.dsl.module
 
diff --git a/app/src/main/java/com/futo/circles/di/UiModule.kt b/app/src/main/java/com/futo/circles/di/UiModule.kt
index daf830fd420fca1f77bf370604454d2769500ded..e7f87d543f2a4fd3ee1284357a69f75134af0a0c 100644
--- a/app/src/main/java/com/futo/circles/di/UiModule.kt
+++ b/app/src/main/java/com/futo/circles/di/UiModule.kt
@@ -1,8 +1,8 @@
 package com.futo.circles.di
 
 import com.futo.circles.feature.groups.GroupsViewModel
-import com.futo.circles.feature.groups.timeline.GroupTimelineViewModel
-import com.futo.circles.feature.groups.timeline.invite.InviteMembersViewModel
+import com.futo.circles.feature.group_timeline.GroupTimelineViewModel
+import com.futo.circles.feature.group_invite.InviteMembersViewModel
 import com.futo.circles.feature.log_in.LogInViewModel
 import org.koin.androidx.viewmodel.dsl.viewModel
 import org.koin.core.parameter.parametersOf
diff --git a/app/src/main/java/com/futo/circles/feature/groups/timeline/invite/InviteMembersDialogFragment.kt b/app/src/main/java/com/futo/circles/feature/group_invite/InviteMembersDialogFragment.kt
similarity index 86%
rename from app/src/main/java/com/futo/circles/feature/groups/timeline/invite/InviteMembersDialogFragment.kt
rename to app/src/main/java/com/futo/circles/feature/group_invite/InviteMembersDialogFragment.kt
index 268ff2d9da3089ebf99383e008d6ccfe02a269be..0cbede081c8aae10502f613df3d074e5603fd442 100644
--- a/app/src/main/java/com/futo/circles/feature/groups/timeline/invite/InviteMembersDialogFragment.kt
+++ b/app/src/main/java/com/futo/circles/feature/group_invite/InviteMembersDialogFragment.kt
@@ -1,4 +1,4 @@
-package com.futo.circles.feature.groups.timeline.invite
+package com.futo.circles.feature.group_invite
 
 import android.os.Bundle
 import android.view.View
@@ -7,7 +7,6 @@ import com.futo.circles.R
 import com.futo.circles.base.BaseFullscreenDialogFragment
 import com.futo.circles.databinding.InviteMembersDialogFragmentBinding
 import com.futo.circles.extensions.observeData
-import com.futo.circles.feature.groups.timeline.GroupTimelineFragmentArgs
 import org.koin.androidx.viewmodel.ext.android.viewModel
 import org.koin.core.parameter.parametersOf
 
@@ -15,7 +14,7 @@ import org.koin.core.parameter.parametersOf
 class InviteMembersDialogFragment :
     BaseFullscreenDialogFragment(InviteMembersDialogFragmentBinding::inflate) {
 
-    private val args: GroupTimelineFragmentArgs by navArgs()
+    private val args: InviteMembersDialogFragmentArgs by navArgs()
     private val viewModel by viewModel<InviteMembersViewModel> { parametersOf(args.roomId) }
 
     private val binding by lazy {
diff --git a/app/src/main/java/com/futo/circles/feature/groups/timeline/invite/InviteMembersViewModel.kt b/app/src/main/java/com/futo/circles/feature/group_invite/InviteMembersViewModel.kt
similarity index 63%
rename from app/src/main/java/com/futo/circles/feature/groups/timeline/invite/InviteMembersViewModel.kt
rename to app/src/main/java/com/futo/circles/feature/group_invite/InviteMembersViewModel.kt
index edbc0ee33cde2868978be8509921d0f24aadea82..dc3a86c9f8d0705acdc06fac1706a88fc3bf0aaf 100644
--- a/app/src/main/java/com/futo/circles/feature/groups/timeline/invite/InviteMembersViewModel.kt
+++ b/app/src/main/java/com/futo/circles/feature/group_invite/InviteMembersViewModel.kt
@@ -1,8 +1,8 @@
-package com.futo.circles.feature.groups.timeline.invite
+package com.futo.circles.feature.group_invite
 
 import androidx.lifecycle.MutableLiveData
 import androidx.lifecycle.ViewModel
-import com.futo.circles.feature.groups.timeline.invite.data_source.InviteMembersDataSource
+import com.futo.circles.feature.group_invite.data_source.InviteMembersDataSource
 
 class InviteMembersViewModel(
     private val dataSource: InviteMembersDataSource
diff --git a/app/src/main/java/com/futo/circles/feature/groups/timeline/invite/data_source/InviteMembersDataSource.kt b/app/src/main/java/com/futo/circles/feature/group_invite/data_source/InviteMembersDataSource.kt
similarity index 75%
rename from app/src/main/java/com/futo/circles/feature/groups/timeline/invite/data_source/InviteMembersDataSource.kt
rename to app/src/main/java/com/futo/circles/feature/group_invite/data_source/InviteMembersDataSource.kt
index 1d44a6e82341d3fc870f6b7f7d7a452d99e098a6..2772decb8043f5dd2a5c2685012f00ac306b7036 100644
--- a/app/src/main/java/com/futo/circles/feature/groups/timeline/invite/data_source/InviteMembersDataSource.kt
+++ b/app/src/main/java/com/futo/circles/feature/group_invite/data_source/InviteMembersDataSource.kt
@@ -1,15 +1,14 @@
-package com.futo.circles.feature.groups.timeline.invite.data_source
+package com.futo.circles.feature.group_invite.data_source
 
 import android.content.Context
 import com.futo.circles.R
 import com.futo.circles.extensions.nameOrId
 import com.futo.circles.provider.MatrixSessionProvider
-import org.matrix.android.sdk.api.session.room.timeline.Timeline
 
 class InviteMembersDataSource(
     private val roomId: String,
     private val context: Context
-) : Timeline.Listener {
+) {
 
     private val room = MatrixSessionProvider.currentSession?.getRoom(roomId)
 
diff --git a/app/src/main/java/com/futo/circles/feature/groups/timeline/GroupTimelineFragment.kt b/app/src/main/java/com/futo/circles/feature/group_timeline/GroupTimelineFragment.kt
similarity index 94%
rename from app/src/main/java/com/futo/circles/feature/groups/timeline/GroupTimelineFragment.kt
rename to app/src/main/java/com/futo/circles/feature/group_timeline/GroupTimelineFragment.kt
index fe2c6c817985bfa95b021e5f3432cc70391a29cc..a4c3765a0ee17de01a9b035766a6c4c99f60076e 100644
--- a/app/src/main/java/com/futo/circles/feature/groups/timeline/GroupTimelineFragment.kt
+++ b/app/src/main/java/com/futo/circles/feature/group_timeline/GroupTimelineFragment.kt
@@ -1,4 +1,4 @@
-package com.futo.circles.feature.groups.timeline
+package com.futo.circles.feature.group_timeline
 
 import android.annotation.SuppressLint
 import android.os.Bundle
@@ -19,8 +19,8 @@ import com.futo.circles.extensions.dimen
 import com.futo.circles.extensions.observeData
 import com.futo.circles.extensions.setToolbarTitle
 import com.futo.circles.model.Post
-import com.futo.circles.feature.groups.timeline.list.GroupPostViewHolder
-import com.futo.circles.feature.groups.timeline.list.GroupTimelineAdapter
+import com.futo.circles.feature.group_timeline.list.GroupPostViewHolder
+import com.futo.circles.feature.group_timeline.list.GroupTimelineAdapter
 import com.futo.circles.view.GroupPostListener
 import org.koin.androidx.viewmodel.ext.android.viewModel
 import org.koin.core.parameter.parametersOf
diff --git a/app/src/main/java/com/futo/circles/feature/groups/timeline/GroupTimelineViewModel.kt b/app/src/main/java/com/futo/circles/feature/group_timeline/GroupTimelineViewModel.kt
similarity index 82%
rename from app/src/main/java/com/futo/circles/feature/groups/timeline/GroupTimelineViewModel.kt
rename to app/src/main/java/com/futo/circles/feature/group_timeline/GroupTimelineViewModel.kt
index 4f0e90b19c831a94b5144a166c82347fa25492be..7358640702161008725916321d3a99227025f9ef 100644
--- a/app/src/main/java/com/futo/circles/feature/groups/timeline/GroupTimelineViewModel.kt
+++ b/app/src/main/java/com/futo/circles/feature/group_timeline/GroupTimelineViewModel.kt
@@ -1,8 +1,8 @@
-package com.futo.circles.feature.groups.timeline
+package com.futo.circles.feature.group_timeline
 
 import androidx.lifecycle.MutableLiveData
 import androidx.lifecycle.ViewModel
-import com.futo.circles.feature.groups.timeline.data_source.GroupTimelineDatasource
+import com.futo.circles.feature.group_timeline.data_source.GroupTimelineDatasource
 
 class GroupTimelineViewModel(
     private val dataSource: GroupTimelineDatasource
diff --git a/app/src/main/java/com/futo/circles/feature/groups/timeline/data_source/GroupTimelineBuilder.kt b/app/src/main/java/com/futo/circles/feature/group_timeline/data_source/GroupTimelineBuilder.kt
similarity index 98%
rename from app/src/main/java/com/futo/circles/feature/groups/timeline/data_source/GroupTimelineBuilder.kt
rename to app/src/main/java/com/futo/circles/feature/group_timeline/data_source/GroupTimelineBuilder.kt
index 8cdbd2171181665067ba553b61ced1e1c639adc1..99dfdba6f2c1e016777705ace4593bf549a8324c 100644
--- a/app/src/main/java/com/futo/circles/feature/groups/timeline/data_source/GroupTimelineBuilder.kt
+++ b/app/src/main/java/com/futo/circles/feature/group_timeline/data_source/GroupTimelineBuilder.kt
@@ -1,4 +1,4 @@
-package com.futo.circles.feature.groups.timeline.data_source
+package com.futo.circles.feature.group_timeline.data_source
 
 import com.futo.circles.mapping.toPost
 import com.futo.circles.model.Post
diff --git a/app/src/main/java/com/futo/circles/feature/groups/timeline/data_source/GroupTimelineDatasource.kt b/app/src/main/java/com/futo/circles/feature/group_timeline/data_source/GroupTimelineDatasource.kt
similarity index 96%
rename from app/src/main/java/com/futo/circles/feature/groups/timeline/data_source/GroupTimelineDatasource.kt
rename to app/src/main/java/com/futo/circles/feature/group_timeline/data_source/GroupTimelineDatasource.kt
index c1c63574a97b7ceceda4c501aa78752779ffae4b..9b16a635c8f8332ccf50d2985e2e79b608494656 100644
--- a/app/src/main/java/com/futo/circles/feature/groups/timeline/data_source/GroupTimelineDatasource.kt
+++ b/app/src/main/java/com/futo/circles/feature/group_timeline/data_source/GroupTimelineDatasource.kt
@@ -1,4 +1,4 @@
-package com.futo.circles.feature.groups.timeline.data_source
+package com.futo.circles.feature.group_timeline.data_source
 
 import androidx.lifecycle.MutableLiveData
 import com.futo.circles.extensions.nameOrId
diff --git a/app/src/main/java/com/futo/circles/feature/groups/timeline/list/GroupTimelineAdapter.kt b/app/src/main/java/com/futo/circles/feature/group_timeline/list/GroupTimelineAdapter.kt
similarity index 97%
rename from app/src/main/java/com/futo/circles/feature/groups/timeline/list/GroupTimelineAdapter.kt
rename to app/src/main/java/com/futo/circles/feature/group_timeline/list/GroupTimelineAdapter.kt
index b3e14c8511745dd99faf4ccdf19dfeece8fc305b..bec3d979ed786bed9e162237de631f7010356c23 100644
--- a/app/src/main/java/com/futo/circles/feature/groups/timeline/list/GroupTimelineAdapter.kt
+++ b/app/src/main/java/com/futo/circles/feature/group_timeline/list/GroupTimelineAdapter.kt
@@ -1,4 +1,4 @@
-package com.futo.circles.feature.groups.timeline.list
+package com.futo.circles.feature.group_timeline.list
 
 import android.view.ViewGroup
 import com.futo.circles.base.BaseRvAdapter
diff --git a/app/src/main/java/com/futo/circles/feature/groups/timeline/list/GroupTimelineViewHolder.kt b/app/src/main/java/com/futo/circles/feature/group_timeline/list/GroupTimelineViewHolder.kt
similarity index 97%
rename from app/src/main/java/com/futo/circles/feature/groups/timeline/list/GroupTimelineViewHolder.kt
rename to app/src/main/java/com/futo/circles/feature/group_timeline/list/GroupTimelineViewHolder.kt
index 63cbe5662d8d15a97dfd03af3163e3e723288746..250985d6f62b04f46f2def2d42406bf4812b4ddd 100644
--- a/app/src/main/java/com/futo/circles/feature/groups/timeline/list/GroupTimelineViewHolder.kt
+++ b/app/src/main/java/com/futo/circles/feature/group_timeline/list/GroupTimelineViewHolder.kt
@@ -1,4 +1,4 @@
-package com.futo.circles.feature.groups.timeline.list
+package com.futo.circles.feature.group_timeline.list
 
 import android.util.Size
 import android.view.View
diff --git a/app/src/main/res/navigation/groups_nav_graph.xml b/app/src/main/res/navigation/groups_nav_graph.xml
index dc40641107409ce1ebf82e0c00cc02e3665b21e1..028138feb045072f0bb58e873e038d3b3d9e6fde 100644
--- a/app/src/main/res/navigation/groups_nav_graph.xml
+++ b/app/src/main/res/navigation/groups_nav_graph.xml
@@ -23,7 +23,7 @@
     </fragment>
     <fragment
         android:id="@+id/groupTimelineFragment"
-        android:name="com.futo.circles.feature.groups.timeline.GroupTimelineFragment"
+        android:name="com.futo.circles.feature.group_timeline.GroupTimelineFragment"
         tools:layout="@layout/group_timeline_fragment">
 
         <argument
@@ -46,7 +46,7 @@
 
     <dialog
         android:id="@+id/inviteMembersDialogFragment"
-        android:name="com.futo.circles.feature.groups.timeline.invite.InviteMembersDialogFragment"
+        android:name="com.futo.circles.feature.group_invite.InviteMembersDialogFragment"
         tools:layout="@layout/invite_members_dialog_fragment">
 
         <argument